之所以称ASP.NET Core是一个Web开发平台,而不是一个单纯的开发框架,源于它具有一个极具扩展性的请求处理管道,我们可以通过对这个管道的定制来满足各种场景下的HTTP处理需求。ASP. NET Core应用的很多特性,比如路由、认证、会话、缓存等,都是通过对管道的定制来实现的。我们甚至可以通过管道定制在ASP.NET Core平台上创建我们自己的Web框架,实际上MVC和SingalR这两个重要的Web框架也是采用这样的方式创建的。 [本文已经同步到《ASP.NET Core框架揭秘》之中] [源代码从这里下载]

目录
一、从Hello World说起
二、管道的构成
三、管道的定制

HTTP协议自身的特性决定了任何一个Web应用的工作方式都是监听、接收并处理HTTP请求,并在最终对请求予以响应,HTTP请求处理是管道式设计典型的应用场景。具体来说,我们根据具体的HTTP处理请求构建一个管道,接收到的HTTP请求消息想水一样流入这个管道,组成这个管道的各个环节依次对它作相应的处理。处理的结果同样转变成消息逆向流入这个管道进行处理,并最终转变成回复给客户端的HTTP响应。ASP.NET Core的消息处理管道从设计的角度来讲是非常简单的,但是从具体实现的角度则相对复杂并相对难以理解,为了让读者朋友们通过本章对此具有深刻的理解,我们从简单的部分讲起。

为了使读者朋友们能够以最直观的感受认识ASP.NET Core的消息处理管道,我们来创建一个最简单的Hello World程序。这是一个控制台应用,整个程序由如下所示的五行代码组成。当我们运行这个程序之后,一个名为KestrelServer的服务器将会启动并绑定到本机上的5000端口进行请求监听。针对所有接收到的请求,我们都有会响应一个“Hello World”字符串。

class Program
   2: {
void Main()
   4:     {
new WebHostBuilder()
   6:             .UseKestrel()
)))            
   8:             .Build()
   9:             .Run();
  10:     }
  11: }

相关文章:

  • 2021-06-15
  • 2021-09-28
  • 2022-12-23
  • 2021-12-16
  • 2021-07-17
  • 2021-10-24
猜你喜欢
  • 2021-07-26
  • 2021-05-24
  • 2022-12-23
  • 2021-11-15
  • 2022-02-05
  • 2021-09-09
相关资源
相似解决方案