- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我们正在使用 Web API 2,为了处理异常,我们通过继承 ExceptionFilterAttribute 创建了一个自定义属性。现在我们想将 JSON 请求的日志保存到数据库中,以防出现异常。
我尝试使用 context.Request.Content.ReadAsStringAsync().Result 进行读取,但它返回空字符串。
请帮忙!!
最佳答案
您可以重置请求流位置并重新读取它:
class CustomExceptionFilterAttribute : ExceptionFilterAttribute
{
public override async Task OnExceptionAsync(HttpActionExecutedContext context, CancellationToken cancellationToken)
{
var stream = await context.Request.Content.ReadAsStreamAsync();
stream.Position = 0;
using (var reader = new StreamReader(stream))
{
var requestString = reader.ReadToEnd();
}
}
}
关于c# - 如何在异常情况下读取 HttpActionExecutedContext 中的 JSON 正文,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38849243/
我正在编写一个异常过滤器,将异常记录到 Elmah,所以我正在做这样的事情: class ExceptionLoggingFilter : System.Web.Http.Filters.IExcep
我们正在使用 Web API 2,为了处理异常,我们通过继承 ExceptionFilterAttribute 创建了一个自定义属性。现在我们想将 JSON 请求的日志保存到数据库中,以防出现异常。
我需要获取触发过滤器属性的 Controller 。 我有以下过滤器: public override void OnException(HttpActionExecutedContext filte
我创建了一个过滤器,它继承了 asp.net web api 中的 System.Web.Http.Filters.ActionFilterAttribute,并希望访问 HttpActionExec
我面临着我生命中最糟糕和尴尬的问题。 我正在使用 HttpActionExecutedContext 来缓存我的 WEB API 端点。 我的 web API 在缓存的情况下工作正常,但是当我更新数据
我是一名优秀的程序员,十分优秀!