在策略授权中访问后正文会丢失

时间:2019-11-17 20:12:38

标签: c# asp.net-core authorization policy

所以我的asp.net核心应用程序具有策略授权。对于一项特定策略,我需要访问http post请求的正文。所以我读了这样的身体:

protected override Task HandleRequirementAsync(AuthorizationHandlerContext context, AccessRequirement requirement)
    {
        if (context.Resource is AuthorizationFilterContext authContext)
        {
            using (var stream = new StreamReader(authContext.HttpContext.Request.Body)
            {
                dynamic body = stream.ReadToEnd();
                // do more stuff
        }

        return Task.CompletedTask;
    }

到目前为止,一切正常,但是,在控制器本身中,body为空。我猜是因为流已被读取?如何重置流?

昂首阔步告诉我

{
  "": [
    "A non-empty request body is required."
  ]
}

0 个答案:

没有答案