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
相关推荐
计算机程序设计小李同学7 小时前
基于 Spring Boot + Vue 的龙虾专营店管理系统的设计与实现
java·spring boot·后端·spring·vue
Charlie_lll9 小时前
力扣解题-[3379]转换数组
数据结构·后端·算法·leetcode
VX:Fegn08959 小时前
计算机毕业设计|基于springboot + vue云租车平台系统(源码+数据库+文档)
数据库·vue.js·spring boot·后端·课程设计
汤姆yu9 小时前
2026基于springboot的在线招聘系统
java·spring boot·后端
计算机学姐10 小时前
基于SpringBoot的校园社团管理系统
java·vue.js·spring boot·后端·spring·信息可视化·推荐算法
hssfscv10 小时前
Javaweb学习笔记——后端实战8 springboot原理
笔记·后端·学习
咚为10 小时前
Rust tokio:Task ≠ Thread:Tokio 调度模型中的“假并发”与真实代价
开发语言·后端·rust
Anastasiozzzz11 小时前
对抗大文件上传---分片加多重Hash判重
服务器·后端·算法·哈希算法
Vivienne_ChenW11 小时前
DDD领域模型在项目中的实战
java·开发语言·后端·设计模式
女王大人万岁11 小时前
Go标准库 sync 详解
服务器·开发语言·后端·golang