雷达智富

首页 > 内容 > 程序笔记 > 正文

程序笔记

.NET Core本地调试101 Switching Protocols是什么请求?

2024-06-11 44

今天在调试.NET6网站时发现network里有101状态的请求,看内容是aspnetcore-browser-refresh.js发起的。

Aspnetcore-browser-refresh.js 是一个 JavaScript 文件,由 ASP.NET Core 使用来实现热重载功能。热重载允许开发人员在浏览器中查看代码更改的效果,而无需刷新页面。

aspnetcore-browser-refresh.js 文件会在应用程序启动时由 ASP.NET Core 注入到页面中。该文件随后会建立一个 WebSocket 连接到 ASP.NET Core 服务器。当开发人员保存对代码文件的更改时,ASP.NET Core 服务器会通过 WebSocket 连接向客户端发送消息。然后,客户端会重新加载页面,反映代码的更改。

101 Switching Protocols 是 HTTP 协议中的一个响应状态码,表示服务器已经理解了客户端的请求,并准备切换到客户端要求的协议。

该状态码通常用于:

从 HTTP 协议升级到其他协议,例如 WebSocket。 进行身份验证或授权。

服务器在发送 101 Switching Protocols 状态码时:

在响应头中包含 Upgrade 头字段,指示要切换到的协议。 可能还会包含其他头字段,例如 Sec-WebSocket-Accept 头字段。

客户端在收到 101 Switching Protocols 状态码后:

应该停止使用 HTTP 协议。 开始使用 服务器指示的协议。

以下是一些使用 101 Switching Protocols 状态码的示例:

WebSocket 协议:WebSocket 协议是一种用于在客户端和服务器之间进行双向实时通信的协议。在建立 WebSocket 连接之前,客户端会发送一个 HTTP 请求,其中包含 Upgrade 头字段,指示要升级到 WebSocket 协议。服务器在收到请求后,会发送一个 101 Switching Protocols 状态码,并包含 Upgrade 头字段,指示已接受升级。客户端在收到响应后,会停止使用 HTTP 协议,并开始使用 WebSocket 协议。

HTTPS 协议:HTTPS 协议是 HTTP 协议的安全版本。在建立 HTTPS 连接之前,客户端会发送一个 HTTP 请求,其中包含 Upgrade 头字段,指示要升级到 HTTPS 协议。服务器在收到请求后,会发送一个 101 Switching Protocols 状态码,并包含 Upgrade 头字段,指示已接受升级。客户端在收到响应后,会停止使用 HTTP 协议,并开始使用 HTTPS 协议。

总而言之,101 Switching Protocols 状态码表示服务器已经理解了客户端的请求,并准备切换到客户端要求的协议。 该状态码通常用于从 HTTP 协议升级到其他协议,或进行身份验证或授权。

更新于:5个月前
赞一波!2

文章评论

评论问答