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
相关推荐
稚辉君.MCA_P8_Java1 小时前
View:new关键词干了什么事,还有原型链是什么
后端·云原生
元亓亓亓2 小时前
SSM--day2--Spring(二)--核心容器&注解开发&Spring整合
java·后端·spring
省四收割者2 小时前
Go语言入门(22)-goroutine
开发语言·vscode·后端·golang
飞川撸码2 小时前
读扩散、写扩散(推拉模式)详解 及 混合模式(实际场景分析及相关问题)
分布式·后端·架构
paopaokaka_luck2 小时前
基于SpringBoot+Vue的志行交通法规在线模拟考试(AI问答、WebSocket即时通讯、Echarts图形化分析、随机测评)
vue.js·人工智能·spring boot·后端·websocket·echarts
程序定小飞2 小时前
基于springboot的蜗牛兼职网的设计与实现
java·数据库·vue.js·spring boot·后端·spring
唐叔在学习3 小时前
Pywebview:Web技术构建桌面应用的最佳选择
后端·python·webview
IT_陈寒3 小时前
5种JavaScript性能优化技巧:从V8引擎原理到实战提速200%
前端·人工智能·后端
codervibe4 小时前
闲鱼商品搜索爬虫:从签名算法到反爬机制的完整逆向与实现
后端
跟着珅聪学java4 小时前
vue通过spring boot 下载文件教程
前端·spring boot·后端