2

假设我有一个简单的 ASP.NET MVC 应用程序,其索引视图仅显示一些静态数据。

考虑到 Web 是无状态的,当浏览器请求这个 index.cshtml 时,会发出一个 HTTP Get 请求,服务器将页面内容发送给客户端。

在这种情况下,是否有一个称为连接的实体?如果是这样,我们什么时候可以说建立了连接?

希望我的问题很清楚。

4

3 回答 3

2

在调用 MVC 应用程序之前,客户端(浏览器)和底层 Web 服务器 (IIS) 之间会建立连接。

如果您在 Web 应用程序中收到请求,则表明 TCP 连接已经建立,并且 HTTP 请求已通过 TCP 发送到服务器。使用 keep-alive 语义,多个请求可以使用同一个连接,当然,甚至可以为同一个请求调用多个操作。

所以基本上,连接的建立对于 Web 应用程序指示或跟踪不是特别有用,如果这是你想要做的。

于 2013-10-08T14:07:34.257 回答
1

HTTP 协议基于 TCP 协议。在发出 GET 请求之前,必须建立 TCP 连接。

“连接已关闭”发生在 TCP 连接关闭时,通常是在单个请求/响应交互之后。

可以使用 Keep-Alive 使连接保持打开状态。

于 2013-10-08T14:05:30.053 回答
1

连接已建立到 IIS 服务器/进程,然后转发到 .NET,因此 IIS 收到它的那一刻,它就“建立”了

于 2013-10-08T13:57:36.330 回答