问题标签 [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 投票
0 回答
212 浏览

java - 在删除对话框中显示自定义错误消息

我正在尝试在 jqgrid 删除对话框中显示自定义错误服务器响应。我看到来自服务器的响应,但 jqgrid 删除对话框显示以下错误消息。

委托对话框显示:错误状态:'锁定'。错误代码:403

服务器响应:记录已锁定以进行更新。

0 投票
3 回答
162 浏览

php - 每次在我们的网站上抛出 PHP 错误时如何接收电子邮件

我意识到这可能是一个荒谬的问题,但是有谁知道我如何设置我们的网站,以便每次在我们的网站上抛出 PHP 错误时向我们的管理员发送电子邮件?

0 投票
2 回答
1237 浏览

powershell - 如何在 powershell 中捕获 System.Diagnostics.Eventing.Reader 错误

代码如下所示:

我创建了一个自定义错误变量 $eventerr,当 get-winevent cmdlet 找不到与 XML 命令字符串中的条件匹配的任何事件时,它工作得很好。但是,问题在于:如果 XML 命令字符串无效,则会在 $error 变量而不是 $eventerr 变量中创建错误。我想将该错误存储在我的自定义错误变量中,但我不知道它来自哪里或生成它的原因。或者为什么它实际上不在我的自定义变量中。当我查看这两种不同类型的错误时,我得到的输出如下:

我可以在自定义变量中捕获“NoMatchingEventsFound”错误,但不能捕获 System.Diagnostics.Eventing... 错误。

有什么方法可以将“System.Diagnostics.Eventing...”错误放入我的自定义错误变量中?

0 投票
0 回答
211 浏览

asp.net-mvc - II7 + Win 2008 r2 + MVC4 + 自定义错误的问题

我有以下问题,请尝试重现此问题:

1)如果您在 MVC 站点(IIS7 / NOT CASSINI),“example.com”尝试导航当前地址:“example.com/a/b”

结果:(预期)您将被重定向到您的自定义 404 页面。 http://i.stack.imgur.com/Kg3pL.jpg

2)现在尝试这个错误,再次在 IIS7 上,准确导航这个地址:“example.com/a/b/c/d/e/f/g/h”

结果:(错误)mvc 的原因仅映射前 2 个文件夹,它会引发 IIS 的 404 错误页面,而不会被您的 mvc 拦截。 http://i.stack.imgur.com/C2PRK.jpg

3) 现在让我们试试这个,但在 Visual Studio 2010 或更高版本的开发中,使用 cassini 或 IIS7 express,导航“localhost:1234/a/b/c/d/e/f/g/h”

结果:它将完全按照预期工作,重定向到正确的 404 页面。

为什么如果一切都具有相同的来源,在生产和开发中的工作方式不同,这是 IIS7 错误还是有任何解决方法?

0 投票
1 回答
1759 浏览

c# - WCF 路由服务 - 动态错误处理

我正在了解 WCF 路由服务可以做什么。仍处于“搞砸它,看看它能做什么”阶段。

我对路由服务的理解是,当消息通过时,服务会尝试将其传递给备份列表中最先出现的端点。如果失败了,它将继续尝试下一个,然后是下一个,直到某些东西起作用或没有什么可尝试的。

我想做的是访问该失败事件,以便我可以:

  1. 记录失败
  2. 通过电子邮件发送端点失败的通知
  3. 可选择从备份列表中删除端点,这样它就不会减慢未来消息流经系统的速度

无法找到如何扩展 WCF 框架来处理此特定事件。

这是 WCF 路由服务可以做的事情吗?任何朝着正确方向的轻推将不胜感激。


目前,我在 IIS 下托管了 30 个动态生成的路由服务(或者更准确地说,是 Visual Studio 2010 的 ASP.NET 开发服务器)。我在 Global.asax 中设置服务的路由,如下所示。

ServiceUtility 和 RoutingServiceHostFactory 是自定义类。请注意,IPolicyService 是我感兴趣的程序集中的 WCF 服务合同接口。

我正在生成我的 ServiceHosts,如下所示。为简洁起见,我省略了一些辅助方法。

端口 2521 在另一端有一个实际的网站,它托管一些 WCF 服务。上面提到的其他端口没有任何监听。

对于上下文,这是我的路由站点的 Web.config。请注意,超时等只是我搞砸的结果,不要太认真。


编辑

为了回应 TheDoctor 在下面的回答,我认为我应该扩展自我最初发布以来我一直在使用这个尝试的解决方案所做的事情。我试过实现 IErrorHandler 接口。但是,我没有太多运气。

请注意,在上面的示例中,我的 RoutingServiceHostFactory 略有变化。我现在将 RoutingServiceErrorHandlerInjector 行为添加到服务描述中。请注意,出于说明的目的,我还在备份列表中添加了额外的死端点。

我的期望是我应该触发从 deadDestination1 到 deadDestination5 的 ProvideFault 或 HandleError 事件。我在调试器中的 NotImplementedExceptions 上设置了断点。但该代码永远不会被激活。这些调用最终会到达备份列表末尾的真实地址,并且我用来测试此 RoutingService 的客户端/服务器应用程序运行良好。通信速度较慢,但​​仍在超时限制内。

但是,如果我从上面的 ConfigureRoutingBehavior 方法中注释掉该行backupList.Add(realDestination);,则执行 RoutingServiceErrorHandler.ProvideFault 方法......但它只包含与 deadDestination5 相关的信息。可能已经为 deadDestination1 到 deadDestination4 生成的任何异常或错误在我身上消失了。

此外,我还尝试使用 RedGate 调试器单步执行 RoutingService 的反射代码。这对我来说很棘手,因为我不习惯调试优化的代码,所以几乎没有任何变量可供我实际阅读。但从目测以下逻辑的步骤来看:

System.ServiceModel.Routing.ProcessRequestAsyncResult 中的相关部分如下所示。这些也是通过 RedGate 调试的,所以不能修改。我相信 RedGate 和 Microsoft 发布的来源是准确的。#他怀疑地

根据我的肤浅阅读,在我看来 ProcessRequestAsyncResult 正在通过 ProcessRequestAsyncResult.StartProcessing 方法逐步完成备份列表的工作。然而,StartProcess() 似乎并没有抛出每一个异常,而是它有选择地选择是否抛出异常。

似乎只有最终死地址的异常实际上是由 StartProcess() 抛出的,然后由 RoutingService.BeginProcessRequest catch 子句传递,然后才最终在我的 IErrorHandler 实现中一直激活。

这强烈地向我表明,我在这里尝试做的事情不能用 System.ServiceModel.Routing 命名空间的当前实现来完成。请注意,RoutingService 是一个密封类,因此即使我认为这是一个好主意(我不这样做),我也不能用我自己的基类来扩展它来改变这种行为。

但话又说回来,请注意,这是一个肤浅的阅读。我很容易出错。事实上,我非常希望被证明是错误的。我非常希望找到一种方法让 RoutingService 做我想做的事情,而不是自己动手。

0 投票
1 回答
3746 浏览

asp.net-mvc - MVC 4 未经授权的访问错误页面

我正在尝试为MVC 4应用程序创建自定义错误页面。但我似乎无法找到合适的参考资料来了解它。

我有一个具体的要求。这与Unauthorized access错误有关。假设我有一组页面,只有特定类型的用户才能访问。输入Admin的用户有权访问管理页面,但输入的用户Basic没有。

所以我想要做的是,如果类型的用户Basic已登录到网站并且如果他们尝试访问管理页面,而不是将它们扔到登录页面,则会在错误页面中显示一条消息。

谁能帮助我如何实现这一目标?

0 投票
2 回答
994 浏览

c# - 在 asp.net 中存储用户友好的错误消息和系统错误消息映射的最佳位置?

我正在使用肥皂,肥皂返回带有数字的不同错误消息。客户希望将这些映射到更用户友好的错误消息列表。

所以我正在考虑在它们之间创建一个映射并始终显示友好的错误消息。

但是,存储映射的最佳位置在哪里?易于维护和设置的地方(输入映射,它是 100 条消息的列表)。

我知道 asp.net 有这个资源文件,不知道这是不是一个好方法?


0 投票
1 回答
486 浏览

ruby-on-rails - Rails 4,如何回调自定义错误?

下面是一些 sudo 代码:

异常.rb

期望的结果:

问题:

我如何在rails中做到这一点?我看到了一种rescue_from方法,但我认为它只能在控制器内部使用

非常感谢!

0 投票
1 回答
17952 浏览

c# - 从客户端检测到潜在危险的 Request.QueryString 值

我正在使用 WebForm

我正在对我的网站进行安全测试,但是当我尝试通过 url 传递一个 QueryString 时,例如:

'"-->netsparker(0x00286A) mysite/Error/PageNotFound.aspx?aspxerrorpath=%27%22--%3E%3C/style%3E%3C/script%3E%3Cscript%3Enetsparker(0x0030C5)%3C/script %3E

我在“/”应用程序中出现服务器错误。

从客户端检测到潜在危险的 Request.QueryString 值 从客户端 (>) 检测到潜在危险的 Request.Path 值。

我在 web.config

知道我该如何纠正吗?

0 投票
1 回答
655 浏览

asp.net-mvc - 如何在使用 Jquery UI 选项卡和自定义错误处理程序时捕获 Ajax 错误

我在我的 asp.net mvc Web 应用程序中使用 Jquery UI 选项卡。我的标签工作得很好。

但是,问题是当发生 ajax 错误时,应该捕获它并返回 JSON 响应。

我正在使用一个 CustomError 处理程序来覆盖 MVC HandleError 属性,如下所示:

因此,如果发生错误并且是 ajax 请求,那么上述方法将抛出 JSON 响应。

但是,我正在努力找出如何捕捉 JSON 响应并在客户端显示它。

请帮助..我尝试将 ajaxoptions 与 UI 选项卡一起使用,如下所示:

请帮助..关于如何接收错误的 JSON 响应并向最终用户显示适当的警报..