问题标签 [custom-error-handling]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1133 浏览

ruby-on-rails - CanCan::AccessDenied 的“rescue_from 异常”异常

我已经实现了自定义错误处理,并使用这一行来解决错误:

但是,这也是从 CanCan::AccessDenied 中拯救出来的,我怎样才能对这条规则做出例外来拯救 'CanCan::AccessDenied' 并发送到根路径并使用自定义方法 ':render error' 拯救一切?

0 投票
1 回答
1378 浏览

c# - 如何使用 MVC 错误处理程序(自定义)和 jqgrid 加载错误触发器显示错误消息

我正在开发 ASP.net MVC 2.0 应用程序并在其中使用 jqgrid。

我正在使用以下代码来处理加载网格的 ajax 请求期间的异常

当在 ajax 请求期间引发错误时,这会显示警报。

但是,在这里我不想使用 xhr.responseTest 来显示错误描述,而是我使用自定义错误处理程序,它以以下方式覆盖 MVC 的默认 HandleError 属性:

我正在使用 [CustomHandleError] 过滤器来处理控制器操作的异常。

因为,可以看到请求是否是 ajax 请求,我正在抛出一些包含错误信息的 json 响应。(上述代码中的数据(错误信息)

我正在将确切的错误信息输入 Data 变量并设置适当的 json 错误响应,

但是,问题是我无法在客户端捕获该 json 并显示该错误消息,而不是使用 xhr.responseText。

我尝试了以下方式:但这不起作用:

警报如下:

它不显示错误消息,而是显示为未定义,这意味着未收到来自 CustomError Handler 的 json 响应

请帮助或就如何实施上述任何建议。

0 投票
3 回答
6614 浏览

c# - 错误处理的设计模式

我在各种项目中遇到过几次这个问题,我想知道是否有比我通常最终使用的解决方案更好的解决方案。

假设我们有一系列需要执行的方法,并且我们想知道其中一个方法是否出现问题并优雅地中断(可能撤消任何以前的更改......),我通常会执行以下操作(伪C#,因为这是我最熟悉的):

我只是想知道(这是我的问题)是否有更好的方法来应对这种事情。我似乎最终if为一些看起来应该更流畅的东西写了很多陈述。

有人建议我对一组委托函数进行循环,但我担心这会过度设计解决方案,除非有一种干净的方法可以做到这一点。

0 投票
1 回答
3654 浏览

php - wordpress,用户名或电子邮件不存在后前端重置密码页面重定向

我有一个简单的问题。我需要创建一个前端页面,该页面将使用 wordpress 处理重置密码功能,因此它基本上与 wordpress 默认页面相同,只是它位于前端。

但是有一件事我想不通,当用户在前端重置密码时,但他或她输入的用户名或电子邮件在数据库中不存在,所以现在我们需要给出错误消息。目前如果发生这种情况,它将重定向到管理员 wp-login.php,这不好,我希望它重定向到带有参数的前端页面,并且用户不应该看到管理页面

有什么解决方案吗,这可能很简单,但是我一直在寻找一段时间,找不到答案

非常感谢您的帮助

0 投票
1 回答
8424 浏览

php - Nginx、PHP + FPM 自定义错误页面

我正在尝试创建一些自定义错误页面,但似乎无法让 500 工作。

我有以下配置:

一开始我以为可能是因为是PHP文件所以改了:

到静态页面:

但是当我破坏一些 PHP 代码来触发它时,它仍然只显示一个带有 500 响应代码的空白页面。

然后我试图让它成为里面的最后一条规则,location ~ \.php$但同样的事情发生了。任何想法为什么自定义 500 页面不起作用?

我还注意到,如果您尝试访问具有 .php 扩展名的“拒绝访问”文件,它将不会显示自定义 403 页面,而是显示内置页面。有没有办法让规则也涵盖 .php 文件?

0 投票
1 回答
155 浏览

asp.net - ASP.NET MVC 中错误返回的区别

return new HttpStatusCodeResult(500)和在操作中导致真正的错误(如除以零)有什么区别?

我问是因为我的 customErrors 在发生除零之类的错误时工作正常,但是如果我返回新的 HttpStatusCodeResult(500),customError 不会显示我的页面

0 投票
0 回答
1593 浏览

c# - 自定义 410 错误处理程序

在共享服务器上的病毒攻击添加了 180 个指向客户网站的链接并且我花了数小时手动删除它们之后,我想通过包含一个通用的 410 处理程序来阻止任何类似的未来攻击。我首先修改 global.asax.cs 以在存在查询字符串时发出 410 错误,因为此应用程序不使用它们:

这对于我本地测试机器上的 IE11 和 Chrome 以及共享服务器上的 IE11 工作正常(显示默认错误页面);但 Chrome 显示一个空白页面。

我的 ISP 通知我自定义错误页面将解决此问题,并提供了一个链接到标题为410 a一堆 IIS 中的 html 页面的 SO 帖子。

根据 SO 发布说明,我在根文件夹中创建了一个自定义 410Error.aspx 页面,并在后面的代码中设置了 Response.StatusCode = 410,我将 web.config 修改为 SO 示例,如下所示:

我还将自定义错误设置为 true:

不幸的是,Chrome 在本地机和共享服务器上仍然显示空白页面,IE11 显示默认的 410 错误页面。IIS似乎找不到Error410.aspx,所以我尝试使用几种不同的路径,包括没有运气的绝对路径。我错过了什么?

0 投票
1 回答
3488 浏览

nginx - nginx error location for all servers

Is it possible to define a common location for all servers? From nginx location documentation I've seen that location depends on server. I would like to do something like this:

I've tried setting:

with no success: always showing nginx default error page.

0 投票
2 回答
872 浏览

c - 在 C 中处理来自多个库的错误代码

很多时候,我必须使用多个以不同方式处理错误或为错误定义自己的枚举的库。这使得编写可能必须处理来自不同来源的错误然后返回其自己的错误代码的函数变得困难。例如:

我想到了两种可能的解决方案:

  • 创建我自己的错误代码列表并将这些错误代码转换为新代码,使用类似的函数int translate_foo_error(int err),我将为每个错误编写自己的字符串表示。
  • 创建一个struct my_error同时包含标识库和错误代码的枚举。对字符串的翻译将委托给每个库的适当函数。

这似乎是一个经常出现的问题,所以我很好奇,这通常是如何处理的?似乎前者是大多数图书馆所做的,但后者的工作量较少,并且可以使用已经提供的工具。大多数教程只是向 stderr 打印一条消息并在出现任何错误时退出,这无济于事。我宁愿让每个函数都指出出了什么问题,调用者可以从中决定如何处理它。

0 投票
6 回答
8735 浏览

php - 在自定义错误处理程序中使用 debug_backtrace() 时如何避免“内存……耗尽”错误?

我为我的网站编写了一个错误处理程序,如下所示:

我这样注册:

我将所有传递的变量保存在数据库中,以及帮助我​​调试问题的回溯:

问题是我有时会收到此错误:

允许的内存大小 134217728 字节用尽(尝试分配 30084081 字节)

错误处理程序在出现上述错误时运行的原因是我在创建 Amazon S3 对象(来自他们的 PHP AWS 库)之后尝试使用未定义的变量。我假设由于 Amazon AWS 库非常庞大,以至于回溯正在提取大量数据,这会导致内存不足错误 (?)。

我想在可能的情况下包含回溯以帮助调试,但是如何防止调用该debug_backtrace()函数导致致命错误(在我的错误处理程序中,这有点讽刺......)?