问题描述
我在我的React Native应用中使用signalR来发表评论。当我第一次尝试建立连接并在帖子上发表评论时,出现错误:在连接传输装置之前无法发送。但是第一次之后,它就可以正常工作了。
我尝试过诸如const envData = await preferencesModel.findOne({ userEmail,"environments.envId": envId },{ 'environments.$.envId': envId }).lean();
和@aspnet/signalr
之类的库。两个库都发生了相同的事情。我认为我的连接存在问题。
由于我需要在应用程序的不同区域发出信号,如评论,通知和消息,因此我以这种方式创建连接。
@microsoft/signalr
此函数返回连接实例,我正在做进一步的处理
import {HubConnectionBuilder,LogLevel} from '@aspnet/signalr';
var connection_count = 0;
export const connectionSignalR = async (endPoint,token) => {
return new Promise((resolve,reject) => {
let _hubConnection = new HubConnectionBuilder()
.withUrl(
`http://www.XXXXXXX.com/${endPoint}?access_token=${token}`,)
.configureLogging(LogLevel.Debug)
.build();
const startConnection = async () => {
await _hubConnection.start();
console.log('[SignalR Connection State]:',_hubConnection.state);
if (_hubConnection.state === 1) {
connection_count = 0;
resolve(_hubConnection);
} else {
console.log('[Error with connection signalR]: ');
if (connection_count < 3) {
connection_count = connection_count + 1;
console.log('[Trying to connection again]:');
startConnection();
} else {
connection_count = 0;
reject('Error in connection');
}
}
};
startConnection();
});
};
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)