Jus*_*wan 1 .net javascript c# asp.net websocket
我正在尝试使用 ASP.NET Core WebSocket,但new WebSocket("ws://localhost:5702");在 JavaScript 中出现这样的错误:
WebSocket connection to 'ws://localhost:5702/' failed: Error during WebSocket handshake: Unexpected response code: 200
Run Code Online (Sandbox Code Playgroud)
我的配置方法Startup.cs:
public void Configure(IApplicationBuilder app)
{
app.UseDefaultFiles();
app.UseStaticFiles();
app.UseWebSockets();
app.UseWebSocketHandler();
}
Run Code Online (Sandbox Code Playgroud)
我的Middlewares\WebSocketMiddleware.cs:
WebSocketMiddleware.cs
有人知道吗?
谢谢你。
您遇到的行为是因为其他一些中间件 (UseStaticFiles) 正在向您的 websocket 客户端返回 200 OK 代码。
为避免这种情况,请确保将 WebSocket 中间件放在 UseStaticFiles()之前。就个人而言,我会把它放在顶部,如下所示:
public void Configure(IApplicationBuilder app)
{
//first handle any websocket requests
app.UseWebSockets();
app.UseWebSocketHandler();
//now handle other requests (default, static files, mvc actions, ...)
app.UseDefaultFiles();
app.UseStaticFiles();
//app.UseMvc(...);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3648 次 |
| 最近记录: |