Fec*_*ore 9 c# asp.net httpwebrequest asp.net-web-api
是否可以记录对ASP.NET Web API发出的每个HTTP请求,即使请求格式不正确,或者由于某些其他原因无法路由到其中一个控制器.
例如,如果POST方法将Order模型作为其参数,则不正确的请求将阻止它到达控制器的POST方法.我想提醒某人,以便采取行动防止将来失败.
有没有办法从控制器上游进一步捕获这些请求?
无论使用Tracing,都需要实现ITraceWriter,如下所示
http://www.asp.net/web-api/overview/testing-and-debugging/tracing-in-aspnet-web-api
或者实现消息处理程序
http://www.strathweb.com/2012/05/implementing-message-handlers-to-track-your-asp-net-web-api-usage/
http://www.asp.net/web-api/overview/working-with-http/http-message-handlers
消息处理程序允许您在传递到 HttpControllerDispatcher 之前更改消息,因此您可以处理路由和操作方法选择方面的常见问题。
但作为最后一个,当您托管在 IIS 上时,请毫不犹豫地使用 AppFabric 日志记录,因为它可以在请求到达您的 Web 应用程序之前为您提供出现问题的信息。它处理 Web 应用程序中存在全局错误的场景,例如 web.config 错误。