我在使用WebSockets将数据流式传输到客户端的应用程序上工作。 WebSocket端点的结构方式(/auth/watch/:stream-id
)使浏览器可以访问与无流相对应的URL。
服务器将在这种情况下返回404错误。我想处理此类错误并向最终用户显示相应的消息(例如您尝试访问的流不存在)。
我用谷歌搜索了一下,但未能找到任何结果。套接字的Error和Close事件都没有提供有关响应代码的任何信息(我想这是因为响应代码对WebSockets没有多大意义)。我发现尝试向此端点发出HTTP请求会导致404错误,因此我可以通过其他请求处理此问题。
有没有办法在客户端处理此类案件没有额外请求?
非常感谢!
答案 0 :(得分:0)
您不能使用try-and-catch来解决此错误,您必须从关闭事件的代码中确定,这里是一个样本
let ws = new WebSocket("wss://jsbin.com", "protocol");
ws.onclose = (e) => {
if(e.code === 1006) {
alert('ws closed abruptly');
}
}