VB/ASP.NET :从 URL 重定向获取实际的异常消息



我正在使用HtmlUtility来呈现url调用。似乎它调用的网址有一些异常。问题是问题在于没有捕获该异常。相反,它捕获内部服务器 500。有谁知道如何在 url 上捕获原始错误?谢谢你的帮助!

Try
    htmlUtility.LoadUrl(request.UrlToGenerateFrom)
catch ex As Exception
    Throw New InvalidEmailRenderException("aspNetEmail failed to load page. URL: " & request.UrlToGenerateFrom, ex)
End Try

要在 HTML 响应中传递异常详细信息,您必须创建一个包含异常信息的新响应。当您看到"内部服务器错误 500"时,这是因为您在示例代码中重新引发异常。

如果您使用的是 MVC 或 WebAPI 模式,则可以使用 HttpResponseMessage 类根据错误修改 HTTP 状态代码。

例:

Public Class ProductController
Inherits System.Web.Mvc.Controller
Function Index() As ActionResult
    Dim htmlUtility As HtmlUtility
    Try
        htmlUtility.LoadUrl(request.UrlToGenerateFrom)
    Catch ex As Exception
        ' Change status code in HTTP response.
        Return New HttpResponseMessage(HttpStatusCode.BadGateway)
    End Try
End Function
End Class

最新更新