Questions tagged «error-handling»

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

5
仅通过htaccess在PHP中启用错误显示
我正在在线测试一个网站。 目前,错误尚未显示(但我知道它们存在)。 我只能访问该.htaccess文件。 如何使用.htaccess文件显示所有错误? 我将以下行添加到我的.htaccess文件中: php_flag display_startup_errors on php_flag display_errors on php_flag html_errors on 现在页面显示: 内部服务器错误

6
处理JavaScript中的特定错误(请考虑例外)
您将如何实现不同类型的错误,以便能够捕获特定错误并让其他错误冒出来..? 实现此目的的一种方法是修改Error对象的原型: Error.prototype.sender = ""; function throwSpecificError() { var e = new Error(); e.sender = "specific"; throw e; } 捕获特定错误: try { throwSpecificError(); } catch (e) { if (e.sender !== "specific") throw e; // handle specific error } 你们有其他选择吗?

5
单值上下文中的多个值
由于Go中的错误处理,我经常会遇到多个值函数。到目前为止,我的处理方式非常混乱,我正在寻找编写更简洁代码的最佳实践。 假设我具有以下功能: type Item struct { Value int Name string } func Get(value int) (Item, error) { // some code return item, nil } 我如何item.Value优雅地分配一个新变量。在引入错误处理之前,我的函数刚刚返回item,我可以简单地做到这一点: val := Get(1).Value 现在,我这样做: item, _ := Get(1) val := item.Value 有没有办法直接访问第一个返回的变量?

6
ASP.NET MVC中的记录错误
我当前在ASP.NET MVC应用程序中使用log4net记录异常。我这样做的方法是让我所有的控制器都继承自BaseController类。在BaseController的OnActionExecuting事件中,我记录了可能发生的所有异常: protected override void OnActionExecuted(ActionExecutedContext filterContext) { // Log any exceptions ILog log = LogManager.GetLogger(filterContext.Controller.GetType()); if (filterContext.Exception != null) { log.Error("Unhandled exception: " + filterContext.Exception.Message + ". Stack trace: " + filterContext.Exception.StackTrace, filterContext.Exception); } } 如果在控制器操作期间发生未处理的异常,则此方法非常有用。 至于404错误,我在我的web.config中设置了一个自定义错误,如下所示: <customErrors mode="On"> <error statusCode="404" redirect="~/page-not-found"/> </customErrors> 在处理“页面未找到” URL的控制器操作中,我记录了所请求的原始URL: [AcceptVerbs(HttpVerbs.Get)] public ActionResult PageNotFound() …

10
ASP.NET MVC自定义错误处理Application_Error Global.asax?
我有一些基本代码来确定我的MVC应用程序中的错误。目前在我的项目,我有一个名为控制器Error与操作方法HTTPError404(),HTTPError500()和General()。它们都接受字符串参数error。使用或修改下面的代码。将数据传递给错误控制器进行处理的最佳/正确方法是什么?我想有一个尽可能强大的解决方案。 protected void Application_Error(object sender, EventArgs e) { Exception exception = Server.GetLastError(); Response.Clear(); HttpException httpException = exception as HttpException; if (httpException != null) { RouteData routeData = new RouteData(); routeData.Values.Add("controller", "Error"); switch (httpException.GetHttpCode()) { case 404: // page not found routeData.Values.Add("action", "HttpError404"); break; case 500: // server error routeData.Values.Add("action", "HttpError500"); …


8
如何用零除返回0
我正在尝试在python中执行元素明智的除法,但是如果遇到零,我需要将商设为零。 例如: array1 = np.array([0, 1, 2]) array2 = np.array([0, 1, 1]) array1 / array2 # should be np.array([0, 1, 2]) 我总是可以在数据中使用for循环,但是要真正利用numpy的优化,我需要除法函数在除以零错误后返回0,而不是忽略错误。 除非我缺少任何东西,否则numpy.seterr()似乎不会在出现错误时返回值。在设置自己的除以零的错误处理方法时,还有人对我如何从numpy中获得最大收益有其他建议吗?


11
如何解决错误LNK2019:无法解析的外部符号-功能?
我收到此错误,但是我不知道如何解决。 我使用的是Visual Studio2013。我将解决方案的名称命名为MyProjectTest, 这是我的测试解决方案的结构: - function.h #ifndef MY_FUNCTION_H #define MY_FUNCTION_H int multiple(int x, int y); #endif -function.cpp #include "function.h" int multiple(int x, int y){ return x*y; } - main.cpp中 #include <iostream> #include <cstdlib> #include "function.h" using namespace std; int main(){ int a, b; cin >> a >> b; cout << …

4
在壳管中捕获错误代码
我目前有一个脚本,其功能类似于 ./a | ./b | ./c 我想对其进行修改,以便如果a,b或c中的任何一个退出并显示错误代码,我都会打印一条错误消息并停止,而不是向前传递错误的输出。 最简单/最干净的方法是什么?

8
在服务器上记录客户端JavaScript错误[关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 6年前关闭。 改善这个问题 我正在运行一个ASP.NET站点,在该站点中,我只能通过手动测试来查找一些JavaScript错误。 是否有可能在客户端捕获所有JavaScript错误,并将其记录在服务器上(即通过Webservice或类似方式记录在EventLog中)?


5
禁用PHP 5.4中的严格标准
我目前正在php 5.4上运行一个站点,在此之前我在5.3.8上运行了我的站点。不幸的是,php 5.4结合了E_ALL和E_STRICT,这意味着我以前的设置error_reporting现在无法正常工作。我以前的值是E_ALL & ~E_NOTICE & ~E_STRICT我应该一次启用一个值吗? 我有太多错误,文件中包含太多代码供我修复。

10
我怎样才能抓到404?
我有以下代码: HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url); request.Method = "HEAD"; request.Credentials = MyCredentialCache; try { request.GetResponse(); } catch { } 如何捕获特定的404错误?WebExceptionStatus.ProtocolError只能检测到发生错误,而不能给出错误的确切代码。 例如: catch (WebException ex) { if (ex.Status != WebExceptionStatus.ProtocolError) { throw ex; } } 只是不够有用...协议异常可能是401、503、403,实际上是任何东西。

3
您如何获得Golang程序来打印刚刚调用的错误的行号?
我试图使用Go语言在Golang程序中抛出错误,log.Fatal但是log.Fatal也没有打印出log.Fatal运行该行的行。无法访问名为log.Fatal的行号吗?即有没有办法在抛出错误时获取行号? 我试图用谷歌搜索,但不确定如何。我能得到的最好的结果是打印堆栈跟踪,我认为这很好,但可能有点过多。我也不想debug.PrintStack()每次都需要行号时就写东西,我只是惊讶地发现没有任何内置函数可以用于这种log.FatalStackTrace()或非服装的东西。 另外,我不想制作自己的调试/错误处理工具的原因是,我不想让人们不得不学习如何使用我的特殊服装处理代码。我只想要一些标准,人们以后可以阅读我的代码,就像 “嗯,所以它抛出一个错误并执行X ...” 了解我的代码的人越少越好:)

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.