asp.net core读取request内容

在Startup.cs中定义Middleware,设置缓存Http请求的Body数据。代码如下。自定义Middleware请放到Configure方法的最前面。

cs 复制代码
app.Use(next => new RequestDelegate(
          async context => {
              context.Request.EnableBuffering();
              await next(context);
          }
      )); 

GET请求

cs 复制代码
HttpContext.Request.Query
//或者
HttpContext.Request.QueryString

POST请求

form

cs 复制代码
HttpContext.Request.Form

body

cs 复制代码
HttpContext.Request.Body

//过滤器中使用
public override async Task OnExceptionAsync(ExceptionContext context){
        var httpContext = context.HttpContext;
         var request = httpContext.Request;
         request.Body.Position = 0;
         StreamReader sr = new StreamReader(request.Body);
         string body = await sr.ReadToEndAsync();
         request.Body.Position = 0;
     }
 }

file

cs 复制代码
HttpContext.Request.Form.Files
相关推荐
爱勇宝6 小时前
没有 Fn 键关触控板?我做了一个双击即用的 Windows 小工具
前端·后端·程序员
沙湖遇雨7 小时前
8.ByteBuf 的数据模型、生命周期和内存分配
后端
by组态7 小时前
Ricon组态系统API参考手册
前端·后端·物联网
再吃一根胡萝卜7 小时前
Agent 如何选择与生成 SQL —— Text2SQL 全链路详解
后端
苍何7 小时前
把操作流程直接录成 Skill,豆包太夯了!
后端
Go_error7 小时前
在 Go 服务层中如何优雅地管理事务?
后端·go
爱读源码的大都督8 小时前
DeepSeek面试官问:多租户 RAG 系统怎样实现细粒度权限控制?
后端·面试·架构
苍何8 小时前
我们终于成立了 AgentWork 开源社区,16.4 万字豆包工作蓝皮书同步开源(建议收藏)
后端