javascript - 在 socket.io 的上下文中,响应 101 是什么意思?
问题描述
我在我的应用程序中遇到了一个问题,我应该得到响应代码 200(而且我大部分时间都这样做),但在某些时候我得到响应代码 101。这在套接字的上下文中到底意味着什么。伊奥?我读到这意味着协议发生了切换,这可能不是我想要发生的事情。这是一个大问题,因为在日志显示“断开连接的用户”之后,我得到了返回的响应代码,它搞砸了我的应用程序。也许这只是糟糕的用户连接?我在想可能是因为传输策略从“轮询”变为“网络套接字”?如果这是问题,我该如何纠正?
我正在附加图像,但老实说,我什至不知道在代码方面该放什么,所以这是我的 socket.io 初始化:
const io = require('socket.io')(http);
function onConnection(socket){
console.log("Connected a socket");
socket.on('disconnect', function() {
console.log("DISCONNECTED USER: " + socket.id);
}
}
客户端在 Swift 中,看起来像:
var socket: SocketIOClient?
func establishConnection(_ completion: (() -> Void)? = nil) {
let socketUrlString: String = "serverURL"
self.manager = SocketManager(socketURL: URL(string: socketUrlString)!, config: [.log(false), .reconnects(true), .extraHeaders(["header": "customheader"])])
self.socket = manager?.defaultSocket
self.socket?.connect()
appState.socketIsConnected = true
self.socket?.once(clientEvent: .connect, callback: { (data, emitter) in
print("\n\n\n connection done!! \n\n\n")
if completion != nil{
completion!()
}
})
}
解决方案
推荐阅读
- reactjs - 将 for 循环中的项目 onPress 传递给本机反应中的方法/函数
- python - 使用 pymongo 更新并添加更多新的字符串字段到 mongodb 中的对象
- javascript - 我的机器人没有抛出任何错误,但似乎无法连接到 Discord
- powershell - 首次启动时写入输出不返回任何 PSCustomObject
- python - 大熊猫分组后列消失
- java - setText() 使活动崩溃
- javascript - 如何更改来自 React 中道具的输入值?
- sql-server - 使用 insert into 创建的表时,什么会导致查询时间过长?
- c++ - c++ lambda:是否可以通过关闭打开的参数来创建新的 lambda?
- google-maps - Ionic 3 中嵌入的动态长纬度谷歌地图