Angular 如果服务器不可用,如何捕获WebSocketSubject错误?
我在Angular 8中有一个WebSocket服务,它工作得很好(一般来说)。我像这样连接到插座:Angular 如果服务器不可用,如何捕获WebSocketSubject错误?,angular,websocket,error-handling,rxjs,Angular,Websocket,Error Handling,Rxjs,我在Angular 8中有一个WebSocket服务,它工作得很好(一般来说)。我像这样连接到插座: public connect(): void { this.socket$ = new WebSocketSubject({ url: CONTENT_SERVER_URL, }); this.socket$ .subscribe(
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()
不起作用)订阅错误处理程序没有捕获它?订阅()错误处理程序可以找到。但是我也看到了这个控制台消息…我也想知道这个错误消息,这样我就可以得到响应代码。不确定subscribe错误处理程序是否捕获了think.it?subscribe()错误处理程序可以查找。但是我也看到了这个控制台消息…我也想知道这个错误消息,这样我就可以得到响应代码。不知道怎么想。