Tag: error handling

如何获得MVC行动返回404

我有一个采取用​​于检索一些数据的string的操作。 如果这个string导致没有数据被返回(可能是因为它已被删除),我想返回一个404并显示一个错误页面。 我目前只是使用返回一个特殊的视图,显示一个友好的错误消息,特定于此操作,说该项目未find。 这工作正常,但理想情况下,将返回一个404状态代码,以便search引擎知道这个内容不再存在,并可以从search结果中删除它。 什么是最好的方式去做这件事? 是不是像设置Response.StatusCode = 404一样简单?

AsyncTask和Android上的error handling

我使用Handler将代码转换为AsyncTask 。 后者非常擅长 – 在主UI线程中asynchronous更新和处理结果。 我不清楚的是,如果在AsyncTask#doInBackground发生exception,如何处理exception。 我这样做的方式是有一个error handling程序并发送消息。 它工作正常,但它是“正确”的方法还是有更好的select? 另外我明白,如果我将error handling程序定义为活动字段,它应该在UI线程中执行。 然而,有时(非常难以预料的),我会得到一个exception说,从Handler#handleMessage触发的代码执行在错误的线程。 我应该在Activity#onCreate初始化error handling程序吗? 将runOnUiThread放入Handler#handleMessage似乎是多余的,但它执行得非常可靠。

如何捕获Ajax查询post错误?

如果Ajax请求失败,我想捕获错误并显示相应的消息。 我的代码如下所示,但无法捕捉到失败的Ajax请求。 function getAjaxData(id) { $.post("status.ajax.php", {deviceId : id}, function(data){ var tab1; if (data.length>0) { tab1 = data; } else { tab1 = "Error in Ajax"; } return tab1; }); } 我发现,Ajax请求失败时,“Ajax错误”永远不会执行。 如何处理Ajax错误并在出现错误时显示相应的消息?

如何为C#MVC4 WebAPI应用程序全局logging所有exception?

背景 我正在开发一个客户端的API服务层,我已经被要求捕捉并logging所有错误的全球。 所以,虽然类似未知端点(或动作)的东西很容易通过使用ELMAH或向Global.asax添加如下内容来处理: protected void Application_Error() { Exception unhandledException = Server.GetLastError(); //do more stuff } 。 。 。与路由无关的未处理错误不会被logging。 例如: public class ReportController : ApiController { public int test() { var foo = Convert.ToInt32("a");//Will throw error but isn't logged!! return foo; } } 我也尝试通过注册这个filter来全局设置[HandleError]属性: filters.Add(new HandleErrorAttribute()); 但是,这也不logging所有的错误。 问题/疑问 如何拦截上面调用/test生成的错误,以便我可以logging它们? 看起来这个答案应该是显而易见的,但是我已经尝试了所有我能想到的东西。 理想情况下,我想添加一些东西到错误logging,如请求用户的IP地址,date,时间等等。 当遇到错误时,我也希望能够自动发送电子邮件给支持人员。 所有这一切我都可以做,只要我能拦截这些错误发生时! 解决! 感谢达林·季米特洛夫(Darin Dimitrov),我接受了他的回答,我明白了这一点。 […]

`throw new Error`和`throw someObject`有什么区别?

我想编写一个通用的error handling程序,它会捕获代码中任何实例抛出的自定义错误。 当我没有像下面的代码throw new Error('sample') try { throw new Error({'hehe':'haha'}); // throw new Error('hehe'); } catch(e) { alert(e); console.log(e); } 日志在Firefox中显示为Error: [object Object] ,我无法parsing对象。 对于第二次throw日志显示为: Error: hehe 而当我做到了 try { throw ({'hehe':'haha'}); } catch(e) { alert(e); console.log(e); } 控制台显示为: Object { hehe="haha"}其中我能够访问错误属性。 有什么不同? 代码中看到的差异是什么? 像string将只是作为string和对象作为对象传递,但语法会不同? 我还没有探讨抛出错误对象…我只做了扔string。 除了上面提到的两种方法还有别的方法吗?

是断言邪恶?

Go语言创build者写道 : Go没有提供断言。 它们不可否认方便,但我们的经验是,程序员使用它们作为拐杖,以避免考虑正确的error handling和报告。 正确的error handling意味着服务器在非致命错误而不是崩溃之后继续运行。 适当的错误报告意味着错误是直接的,并且重点在于,使程序员不必解释大的崩溃痕迹。 当程序员看到错误不熟悉代码时,精确的错误是特别重要的。 你对此有何看法?

如何在Python中打印错误?

try: something here except: print 'the whatever error occurred.' 如何在我的except: block中打印错误?

将自定义数据包含到iOS崩溃转储中

你好堆栈溢出! 一个简单的问题是:是否可以将自定义错误数据embedded到自动生成的iOS崩溃转储中,当我的应用程序在设备上崩溃时从我的用户获得? 例如:我的SQlite数据库将不会因为某种原因(例如,数据库文件已损坏)操作..我无法从此错误恢复,所以我抛出一个exception,并embedded在例外详细的SQLite错误消息。 问题是,应用程序的崩溃转储将不包含exception消息,因此知道应用程序崩溃的条件并不容易。 有没有人知道一种方法把东西放入崩溃转储报告? 或者你有任何其他推荐的方式向开发者报告生产崩溃? 谢谢 !

如何捕捉Flex中的所有exception?

当我在debuggingFlash播放器中运行一个Flex应用程序时,一旦出现意想不到的事情,就会立即popup一个exception。 但是,当客户使用该应用程序时,他不使用debugging闪存播放器。 在这种情况下,他没有得到exceptionpopup,但他的用户界面不工作。 因此,出于可支持性的原因,我想捕捉Flex UI中任何地方都可能发生的exception,并在Flex内部popup窗口中显示错误消息。 通过使用Java,我只是将整个UI代码封装在try / catch块中,但是在Flex中的MXML应用程序我不知道,我可以在哪里执行这样的一般try / catch。

如何让PHP在出错时产生回溯?

尝试使用其默认仅限当前行错误消息来debuggingPHP是非常可怕的。 如何在发生错误时让PHP产生回溯(堆栈跟踪)?