React native 如何在react native中拦截信号器错误';错误:服务器超时,但未收到来自服务器的消息。';?

React native 如何在react native中拦截信号器错误';错误:服务器超时,但未收到来自服务器的消息。';?,react-native,signalr,asp.net-core-signalr,React Native,Signalr,Asp.net Core Signalr,我正在使用包@aspnet/signal来连接我的服务器 在应用程序处于前台之前,所有这些都可以正常工作。如果我失去连接,我可以重新连接,而不会收到错误 当我在后台长时间打开应用程序时,我可以立即重新连接到服务器,但我收到错误错误:连接断开,错误为“错误:服务器超时已过,但未收到服务器的消息”。 如何截获此错误 这是我的一段代码: connection = new signalR.HubConnectionBuilder() .withUrl("http://192.168.xx

我正在使用包@aspnet/signal来连接我的服务器

在应用程序处于前台之前,所有这些都可以正常工作。如果我失去连接,我可以重新连接,而不会收到错误

当我在后台长时间打开应用程序时,我可以立即重新连接到服务器,但我收到错误
错误:连接断开,错误为“错误:服务器超时已过,但未收到服务器的消息”。

如何截获此错误

这是我的一段代码:

connection = new signalR.HubConnectionBuilder()
   .withUrl("http://192.168.xxx.xxx/notificationHub?userId=" + authInfo.userId)
   .build();
    
connection.on("receiveMessage", data => {
   console.log('*** MESSAGGIO RICEVUTO ***');
   Alert.alert(data);
});


                        
connection.start()
   .then(() => console.log("Connessione avvenuta"))
   .catch((err) => console.log(err);

connection.onclose()
   .then(() => connection.start(););
谢谢

错误:连接已断开,错误为“错误:服务器超时,但未收到服务器的消息。”

默认超时值为30000毫秒(30秒),如果此超时时间已过而未从服务器接收任何消息,则连接可能会因上述错误而终止

要解决此问题,请检查您是否只更新信号集线器的设置,而不更改客户端的
servertimeoutinmillizes

建议的
servertimeoutingmillizes
值是
KeepAliveInterval
值的两倍

更新:

是否有办法拦截此错误并在没有警告的情况下管理错误

如果您不希望signalR客户端在浏览器控制台选项卡中记录此错误,可以尝试将日志级别修改为
None

 .configureLogging(signalR.LogLevel.None)
然后在
onclose
回调中管理错误,如下所示

connection.onclose(error => {
    //...

    console.log("Connection Disconnected");
});

这没关系。我的问题不同:是否有办法拦截此错误并在没有警告的情况下管理此错误?
是否有办法拦截此错误并在没有警告的情况下管理此错误?
您可以检查我的更新。