《ASP.NET Core In Action》读书笔记系列三 ASP.NET Core如何处理请求的?

  在本节中,您将看到ASP.NET Core应用程序如何运行的,从请求URL开始到页面呈如今浏览器中。 为此,您将看到 一个HTTP请求在Web服务器中是如何被处理的、ASP.NET Core如何扩展该过程以建立动态页面。html

 

HTTP请求在Web服务器中是如何被处理linux

  当用户在浏览器中输入URL并按下回车。 浏览器将使用HTTP协将用户的请求发送到托管Web应用程序的服务器,一旦服务器收到请求,它将根据请求的类型生成相应HTTP响应。 响应多是一个网页、图像、JavaScript文件或简单确认。当浏览器接收到响应时,它会将内容在屏幕上呈现给用户。以下图所示:windows

 

 

 ASP.NET Core如何处理请求浏览器

  ASP.NET Core应用和浏览器之间的交互,和上面所讲的过程同样。它包含了处理请求的全部功能(验证请求是否有效、登陆以及生成相应的HTML)。以下图所示:反向代理服务器将请求传递给您的应用程序以前捕获该请求。 在Windows中,反向代理服务器一般是IIS,在Linux或macOS上它多是NGINX或者Apache(反向代理是负责接收请求的程序,并将请求转发到合适的Web服务器。 反向代理被暴露到互联网中,而底层的Web服务器只暴露给反向代理,  这样作的好处主要是安全性和提升Web服务器性能)。安全

  请求从反向代理转发到ASP.NET Core应用程序。每一个ASP.NET Core应用程序都有一个内置的Web服务器,默认状况下是Kestrel负责接收原始请求并构建内部数据结构(一个HttpContext对象),可供应用程序的其他部分使用,它包含了应用建立响应所需的所有信息。 一旦应用程序处理完请求(经过中间件及应用逻辑),它将返回Web服务器响应。 ASP.NET Core Web服务器将响应转换为原始HTTP响应,并将其发送回反向代理,反向代理再将响应转发到用户的浏览器。服务器

 

 

 

  ASP.NET Core 的简介,就介绍到这里,接下来咱们进入深刻的研究和学习。在这以前,请选为你的ASP.NET Core 应用选择一个运行的平台,你能够选择 .NET Core、Full .NET Framework. 若是你的应用没有依赖Windows的特定功能(注册表,目录服务,微软发布了兼容性包,这使得这些API在.NET Core中可用),那么请选择.NET Core ,不然请选择Full .NET Framework。接下来章节所涉及的示例,咱们使用windows 10 + Visual Studio 2107 进行演示(不用担忧,这些代码彻底能够运行在linux, macOs等平台上)如图所示:数据结构

  

 

谢谢你的阅读,下节见!若是期待本系列,请点一下推荐!性能

 

原文出处:https://www.cnblogs.com/VolcanoCloud/p/10313928.html学习

相关文章
相关标签/搜索