我遇到 signalR 错误问题:握手已取消

问题描述 投票:0回答:1

我刚开始学习一些有关如何管理实时信息的视频基础知识。我确实做了什么,但我得到了{“错误”:“握手被取消。”}。我第一次使用 websocket 不知道该怎么办在此处输入图像描述

我尝试将我的 signalR 更新到最新版本并重建我的应用程序,但仍然收到相同的错误

postman signalr asp.net-core-webapi
1个回答
0
投票

您需要在消息末尾添加一个消息分隔符,实际上是 ASCII 中的

0x1E

{"protocol":"json","version":1}

当 SignalR 使用 WebSocket 或其他流传输协议时,它会通过同一连接发送多个消息。由于这些是流式传输的,因此不存在像 HTTP 那样的自然边界,其中每个请求和响应都是分开的。因此,SignalR 需要一种方法来标记一条消息的结束和下一条消息的开始。

发送此消息后,您将收到协议已接受的响应,并且您将开始接收来自集线器的心跳(类型:6)消息。

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.