捕获所有传入的请求 asp.net MVC 控制器
本文关键字:asp 请求 net MVC 控制器 | 更新日期: 2023-09-27 18:33:16
在 asp.net 处理请求之前,有没有办法在不使用ActionFilter
的情况下捕获所有传入控制器的请求?
在Startup.cs
文件中将此代码放入 Configure()
方法中:
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
app.UseMvc();
//your code below
app.Run(async (context) =>
{
string body;
using (Stream receiveStream = context.Request.Body)
{
using (StreamReader readStream = new StreamReader(receiveStream, Encoding.UTF8))
{
body = readStream.ReadToEnd();
}
}
Console.WriteLine(body.ToString());
});
}
然后请注意,app.UseMvc()
始终具有优先级,这意味着应用中指定的任何路由都仅转到控制器。 因此,要么指定另一个路由,要么不使用 MVC 中的路由,而是将路由放入拦截中app.Run(async (context)