作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在 Controller 中有一堆XHR Action ,这些 Action 返回一些HTML以插入到页面中。如果响应是错误,则将输出放入特殊的错误div中。到目前为止,没有什么特别有趣的。
但是,此常规过程不适用于Rails的异常处理。如果我在XHR操作中引发异常,则会在我的错误div中获得通用500错误处理程序输出,这看起来有点可怕。虽然我可以在操作中捕获所有可能的异常并提出更适当的错误,但我却失去了标准的异常日志记录和通知,这很糟糕。
因此,我能想到的唯一解决方案是能够指定一个不同的500处理程序HTML片段以用于这些特定操作,但是我发现的不多。任何人有任何想法吗?
最佳答案
您应该能够在JavaScript处理程序中检查500状态代码,并显示诸如“服务器问题”之类的通用消息。如果在某些情况下,更具体的错误消息对生产环境中的最终用户有用,则必须使用rescue_from
子句捕获这些异常。如果确实要阻止显示500页,则可以在XHR Controller 上覆盖rescue_action_in_public
方法。
关于ruby-on-rails - Rails中特定于 Action 的异常处理程序HTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/953551/
我是一名优秀的程序员,十分优秀!