.NET Core本地调试101 Switching Protocols是什么请求?
今天在调试.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个月前相关文章
- PluginCore 基于 ASP.NET Core 的轻量级插件框架
- .NET C# EntityFramework(EF)连接SQLite代码示例
- Sylvan.Data.Excel 性能优异的开源.NET Excel数据读取库
- ASP.NET Core 中常用的内置中间件
- .NET9 F#有什么新特性?
- .NET 开源 ORM FreeSql 使用教程
- .NET9 C# 13 有哪些新特性?
- .NET9 开始删除内置的 Swagger 支持 可使用Scalar.AspNetCore替代
- .NET 9 中System.Text.Json 的新增功能
- 什么是.NET渐进式Web应用(PWA)
- .NET开发中常见的异常报错原因和解决方法?
- .NET框架和CLR的工作原理?
- ASP.NET MVC与Web Forms的区别
- .NET C#中的IEnumerable和IEnumerator的区别
- 使用ADO.NET连接到南大通用GBase 8s数据库
- 鸿蒙OpenHarmony系统可以运行跨平台的.NET Core吗?
- ASP.NET Core使用partial标签报错
- .NET 9 即将推出的功能Task.WhenEach
- .NET 使用HttpClientFactory+Polly替代直接使用HttpClient
- .NET Framework被淘汰了吗?