【发布时间】:2019-03-29 14:41:21
【问题描述】:
我绝对确定这一定是重复的,但我找不到我正在寻找的答案,所以理想情况下,某个善良的灵魂能够快速关闭它作为重复并指出我的答案我在找。
我对 .net MVC 操作进行 ajax 调用并引发异常。 ajax调用的error函数中如何获取异常信息?
明确地说,我不想在 .net 中捕获异常,然后发送将在成功函数中接收的消息。在我的第一份开发工作中,这种类型的方法是在 api 中采用的,它实际上花费了杂货店很多钱,因为开发人员没有阅读文档并且错误地实现了集成。如果发生了实际错误,这将永远不会发生。
同样,这涉及付款,我不希望有人因为没有阅读文档而无意中批准了订单(首先不会有文档,因为这是在内部用于小型企业)和认为因为没有抛出错误,所以订单必须成功处理。
话虽如此,我只是在寻找最简单的方法来获取异常的 Message 属性并显示它(异常本身不是自定义的,但它上面的消息是自定义的;所以不用担心意外的异常泄露系统详细信息)。
编辑:我现在意识到我被要求的东西是不可能的。我真正想要的东西是
a) 运行 ajax 方法的错误回调(当然也不运行成功回调)
b) 能够访问异常的消息
一般情况下,异常会发回 500 响应。我是否可以修改响应以将消息放在可以从错误回调访问的位置?
【问题讨论】:
-
“我不想在 .net 中捕获异常”是什么意思?您不想使用 try {} catch() {} 块吗?
-
异常不会是 JSON 格式,也不是返回类型,因此您的 AJAX 请求无法将其作为 AJAX 响应。即使它是 JSON 格式,您也必须将其返回给请求。为此,您必须使用
try catch处理异常,以便您可以控制异常处理。 -
@TejSoft 我的意思是我不希望它返回会导致成功回调运行的成功响应。我希望错误回调运行。
-
@HimanshuUpadhyay 嗯...我明白你的意思。是否可以编辑关于 500 响应的任何内容,让我将异常的消息放在上面并从错误回调中获取它?
-
我在这里找到了我要找的东西:visualstudiomagazine.com/blogs/tool-tracker/2015/10/…。我现在没有时间做出正确的答案,但如果其他人想这样做,我会将其标记为答案。
标签: jquery .net ajax exception model-view-controller