1

我想自己定制请求处理流程。我不想使用 Asp.net core 下的 Controller 来处理请求。但是有一个前提,必须有一个类方法或者一个委托(包含Request和response形参),所有的请求都在这里处理

对于响应处理,希望使用Asp.net core默认的响应处理方式(如果可以的话),比如ajax请求、动态页面输出、响应图片、文件下载等。

设想代码:</p>

var handler=HTTP.handler((req, res) => {
  if(req.getHeader("x-requested-with")){
      if(req.para("username")==null){
         res.endError(403)
      }else{
         res.statusCode = 200;
         res.setHeader('Content-Type', 'text/plain');
         res.end('Hello World');
      }

  }else{
        res.view('/test/index.cshtml');
  }

});
4

1 回答 1

0

您想编写自定义中间件。它可以在 Startup 中注册以作为请求处理的一部分被调用,并将为所有请求调用。

有一个 HttpContext 对象,因此您可以访问当前请求。

文档有一些很好的例子,你可以修改。

自定义中间件文档

于 2020-06-10T01:21:39.883 回答