Questions tagged «error-handling»

旨在处理错误代码,异常或其他特定于语言的信号所指示的错误的编程语言构造。

6
什么时候应该使用Write-Error与Throw?终止与非终止错误
在PoshCode(http://poshcode.org/3226)上查看Get-WebFile脚本时,我注意到了这种奇怪的现象: $URL_Format_Error = [string]"..." Write-Error $URL_Format_Error return 与以下情况相反的原因是什么? $URL_Format_Error = [string]"..." Throw $URL_Format_Error 甚至更好: $URL_Format_Error = New-Object System.FormatException "..." Throw $URL_Format_Error 据我了解,您应该使用Write-Error来解决非终止错误,使用Throw来解决错误,因此在我看来,您不应该在Write-Error之后使用Return。有区别吗?

6
asp.net MVC3上的自定义错误页
我正在开发一个MVC3基本网站,并且正在寻找一种解决方案,用于处理错误并为每种错误呈现自定义视图。因此,假设我有一个“错误”控制器,其主要动作是“索引”(通用错误页面),并且该控制器将针对用户可能会出现的错误(例如“ Handle500”或“ HandleActionNotFound”)执行更多操作。 因此,此“错误”控制器可以处理网站上可能发生的每个错误(例如:找不到“控制器”或“操作”,500、404,dbException等)。 我正在使用Sitemap文件定义网站路径(而不是路线)。 该问题已经回答,这是对Gweebz的回复 我最后的applicaiton_error方法如下: protected void Application_Error() { //while my project is running in debug mode if (HttpContext.Current.IsDebuggingEnabled && WebConfigurationManager.AppSettings["EnableCustomErrorPage"].Equals("false")) { Log.Logger.Error("unhandled exception: ", Server.GetLastError()); } else { try { var exception = Server.GetLastError(); Log.Logger.Error("unhandled exception: ", exception); Response.Clear(); Server.ClearError(); var routeData = new RouteData(); routeData.Values["controller"] = …

12
如何使MVC操作返回404
我有一个操作,它接收一个用于检索某些数据的字符串。如果此字符串导致未返回任何数据(可能是因为已删除),那么我想返回404并显示错误页面。 我目前仅使用return特殊视图来显示此操作特定的友好错误消息,指出未找到该项目。这可以正常工作,但理想情况下希望返回404状态代码,以便搜索引擎知道此内容不再存在,可以将其从搜索结果中删除。 最好的方法是什么? 设置Response.StatusCode = 404一样简单吗?

5
R中的“ throw”的等效项
如何“抛出” R中的错误?我有一个函数,它接受一个数据框和一些列名,并对其进行填充。如果列不存在,我希望该函数停止并停止所有依赖于此的函数。 我已经看过recover并browse和traceback,但同时,他们似乎是接近,但不是我所期待的。
139 r  error-handling 

4
JavaScript错误处理的最佳实践是什么?
我期待开始做我的JavaScript多一点错误的证明,而且我发现很多文档的使用try,catch,finally,和throw,但我不是专家在何时何地抛出错误找一吨的建议。 是否应该将每段代码都包裹在try / catch中? 有没有想更多的意见本上在什么点错误应该被抓? 产生错误而不是使代码在生产中静默失败是否有缺点? SO在实现方面已经涉及到这一点,但是服务器记录JS错误是否是有效的策略? 关于捕获应用程序中的错误,我应该知道的其他什么? 我也完全可以聆听游戏中的书籍,这些书籍包含出色的章节或对错误处理的深入说明。雄辩的JavaScript触及了这个问题,但对这个问题的描述或看法不是很明确。 感谢您提供的任何建议!


6
如何不为fs.readFileSync()捕获文件?
在node.js中,readFile()显示了如何捕获错误,但是对于readFileSync()函数,关于错误处理没有任何注释。这样,如果我在没有文件的情况下尝试使用readFileSync(),则会收到错误消息Error: ENOENT, no such file or directory。 我如何捕获抛出的异常?Doco没有说明抛出了什么异常,所以我不知道需要捕获哪些异常。我应该注意,我不喜欢普通的“捕获每个可能的异常”样式的try / catch语句。在这种情况下,我希望捕获当文件不存在并且尝试执行readFileSync时发生的特定异常。 请注意,在执行连接尝试之前,我仅在启动时执行同步功能,因此不需要我不应该使用同步功能的注释:-)

10
错误的根源是什么:getaddrinfo EAI_AGAIN?
我的服务器今天抛出了这个,这是我从未见过的Node.js错误: Error: getaddrinfo EAI_AGAIN my-store.myshopify.com:443 at Object.exports._errnoException (util.js:870:11) at errnoException (dns.js:32:15) at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:78:26) 我想知道这是否与DynDns DDOS攻击有关,该攻击今天影响了Shopify和许多其他服务。这是有关此的文章。 我的主要问题是怎么dns.js办?它是节点的哪一部分?如何在其他域中重新创建此错误?


16
如何关闭PHP注意事项?
Notice: Constant DIR_FS_CATALOG already defined 我已经注释掉display_errors的php.ini,但不能正常工作。 如何使PHP不向浏览器输出此类信息? 更新 我放在display_errors = Off那里,但它仍在报告此类通知, 这是PHP 5.3的问题吗? 也报告大量调用堆栈。

2
PHP错误处理:die()Vs trigger_error()Vs throw Exception
关于PHP中的错误处理-到目前为止,我知道有3种样式: die()或exit()样式: $con = mysql_connect("localhost","root","password"); if (!$con) { die('Could not connect: ' . mysql_error()); } throw Exception 样式: if (!function_exists('curl_init')) { throw new Exception('need the CURL PHP extension. Recomplie PHP with curl'); } trigger_error() 样式: if(!is_array($config) && isset($config)) { trigger_error('Error: config is not an array or is not set', E_USER_ERROR); …

6
如何捕获SQLServer超时异常
我需要专门捕获SQL Server超时异常,以便可以对它们进行不同的处理。我知道我可以捕获SqlException,然后检查消息字符串是否包含“ Timeout”,但想知道是否有更好的方法吗? try { //some code } catch (SqlException ex) { if (ex.Message.Contains("Timeout")) { //handle timeout } else { throw; } }

15
Java或C#中异常管理的最佳实践
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引文回答。 4年前关闭。 改善这个问题 我一直在决定如何处理应用程序中的异常。 如果我的异常问题很大程度上来自于1)通过远程服务访问数据或2)反序列化JSON对象。不幸的是,我不能保证其中任何一项都能成功(切断网络连接,无法控制的畸形JSON对象)。 结果,如果确实遇到异常,我将在函数中捕获该异常并将FALSE返回给调用方。我的逻辑是,调用者真正关心的只是任务是否成功,而不是为什么任务没有成功。 这是典型方法的一些示例代码(在JAVA中) public boolean doSomething(Object p_somthingToDoOn) { boolean result = false; try{ // if dirty object then clean doactualStuffOnObject(p_jsonObject); //assume success (no exception thrown) result = true; } catch(Exception Ex) { //don't care about exceptions Ex.printStackTrace(); } return result; } 我认为这种方法很好,但是我真的很想知道管理异常的最佳实践是什么(我真的应该一直在调用堆栈中冒泡一个异常吗?)。 关键问题总结: 可以只捕获异常但不将其冒泡或正式通知系统(通过日志或向用户的通知)可以吗? 有什么最佳实践可以解决并非导致所有内容都需要try …



By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.