angular - 如果服务器不可用,如何捕获 WebSocketSubject 错误?
问题描述
我在 Angular 8 中有一个运行良好的 WebSocket 服务(通常)。我像这样连接到套接字:
public connect(): void {
this.socket$ = new WebSocketSubject({
url: CONTENT_SERVER_URL,
});
this.socket$
.subscribe(
(message) => {
this.serverMessages.push(message);
},
(error) => {
this.status = Status.ERROR;
},
() => {
this.status = Status.CLOSED;
}
);
}
并以这种方式发送消息:
public send(message: Message): void {
if (this.status != Status.CONNECTED)
this.connect();
this.socket$.next(message);
}
现在的问题是服务器并不总是在线,然后我在控制台中收到此消息:
WebSocketSubject.js:91 WebSocket connection to 'wss://MYDNS.XXX:7031/' failed: Error during WebSocket handshake: Unexpected response code: 502
如何捕获此消息,使其不会打印到控制台?(try() catch()
不起作用)
解决方案
推荐阅读
- javascript - 使用 modal 向 mui-datatable 添加新数据
- python - “str”对象没有属性“strftime”
- javascript - DOM appendChild 没有给出正确的输出
- mysql - 在选择中使用聚合时,Where 子句不限制记录
- javafx - gluon openjavafx 二进制版本对应的源代码
- zoho - zoho 使用 deluge 预订自定义功能
- node.js - 将 webpack-dev-server 更新到 3.2.1 后的 Vue.js 项目 - 引发错误
- ios - 分解 Cocoapods 后生成错误
- ansible - 失败时重试 ansible ad-hoc
- opencv - 使用 cvstd_wrapper.hpp opencv4.0.1 编译问题