16.ASP.NET Core应用程序中的开发者异常页面中间件

编程入门 行业动态 更新时间:2024-10-25 16:27:23
developer exception page middleware in asp core application

在这篇文章中,我将向大家介绍,怎么在asp core应用程序中,使用异常页面中间件,来处理我们程序中未处理的异常。在阅读这篇文章之前,可以看看我这个系列的之前写的文章。异常处理是所有应用程序中,特别关键的一个点,我们可以通过各种方式方法,来处理异常,但是在这篇文章我要向大家讲解,怎样使用异常页面中间件来处理异常。这篇文章中,我们主要讨论下面几个点:

  • 什么是开发者异常页面中间件?

  • 怎样在asp core应用程序中,使用异常页面中间件?

  • 怎样定制异常中间件?

  • 我们在哪配置异常页面中间件?

  • 理解异常页面中间件

    默认情况下,asp core应用程序,如果发生了异常,就是仅仅简单的返回一个状态码。我们通过一个例子,来了解一下。我们修改一下configure方法,返回一个异常:

    运行程序:就会看到这样的页面。

    正如你上图所看到的,返回了一个500状态码,表示:服务器内部异常。但是作为一个开发者,当你开发应用程序,你应该要在页面上知道,异常的详细信息,然后你才能分析,并采取措施解决bug.

    怎样在asp core应用程序中,使用developerexceptionpage 中间件?

    当程序发生异常的时候,如果你想在页面中显示异常的详细信息的话,你需要使用developer exception page中间件。所以我们来修改一下configure方法。在我们的程序中,添加异常中间件。

    然后运行应用程序,就看到为什么发生异常了。也能定位错误了!

    正如你在图中所看到的,developer exception page包含一些tab,例如:stack、query、cookies、headers. stack向你展示哪一行代码发生的异常。query向你展示query strings相关信息。cookies向你展示请求设置的cookies,header向你展示客户端发送的请求报文头。

    如果你查看query tab就会发现,没有querystring相关信息,因为你没有在url中传递querystring的信息,或者你没有在请求中设置cooikes.我们在后面的文章中,将会详细讨论querystring 以及cookies.

    请注意:请仅仅只在看来开发模式下面使用developer exception page中间件。因为你不想在生产环境显示这个开发的异常信息的。

    怎样在asp core应用程序中定制usedeveloperexceptionpage中间件?

    如果你想,你也可以定制异常中间件。你需要记住的是:不管你什么时候,想要定制特定中间件,你需要使用下面这些东西:

  • usedeveloperexceptionpage==>为了能定制异常中间件,需要使用developerexceptionpageoption对象;
  • usedefaultfiles==>使用defaultfileoptions对象来定制中间件;
  • usestaticfiles==>使用staticfileoptions对象来定制中间件;
  • usefileserver==>使用fileserveroptions对象来定制中间件;
  • 我们将要定制usedeveloperexceptionpage中间件,所以我们需要使用developerexceptionpageoptions对象。看下图:

    运行程序:

    developerexceptionpageoptions类的sourcecodelinecount属性指定了导致异常的代码行之前和之后要包含的代码行数。

    我们在哪需要配置异常中间件usedeveloperexceptionpage?

    我们应该尽可能早的,在请求管道中配置异常中间件,这样我们就能发现,并显示异常信息在页面中了。

    我们来修改一下configure方法。将异常中间件放在run方法之后再注册。

    然后我们再次运行程序:

    就会发现,不会在页面显示详细的异常信息了。这也就是为什么,我强调,我们应该尽可能早的配置异常中间件,以便处理程序中为处理的异常。

    这篇文章,是我们asp core基础概念学习系列的最后一篇文章了,从后面的系列开始,我们就正式进入asp core的相关学习了。希望大家喜欢。

    • 0
    • 0
    • 0
    • 0
    • 0

    更多推荐

    16.ASP.NET Core应用程序中的开发者异常页面中间件

    本文发布于:2023-06-10 16:28:11,感谢您对本站的认可!
    本文链接:https://www.elefans.com/category/jswz/34/615024.html
    版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
    本文标签:开发者   应用程序   中间件   异常   页面

    发布评论

    评论列表 (有 0 条评论)
    草根站长

    >www.elefans.com

    编程频道|电子爱好者 - 技术资讯及电子产品介绍!