我使用这个库一年了,一切都很好。
我开始使用 RN 0.45 和 0.48 ,然后是 0.53.0。 一切都很完美。
直到我升级以响应本机 0.53.3,并且出现此问题。
这是我得到的错误{"type":"TransportError","description":{"line":"76","collumn":"7944","sourceURL":"index.android.bundle"}}
有时我会“超时”
我没有更改任何代码,我没有更改任何依赖项。
我刚刚做了什么:
我认为这可能是 React Native 的问题,所以我回滚到我使用的预览版本 0.53.0。 但是这个问题仍然存在。 我再次回滚到 0.48,问题仍然存在。 等等。
我使用 socket.io-client 2.0.3(我尝试过 2.0.4 但没有帮助)
我不知道发生了什么。
希望有人会帮忙。 谢谢
+1
我通过添加 ' transports': ['websocket'],
选项解决了这个问题
this.socket = openSocket(socketUrl,{
'reconnection': true,
'reconnectionDelay': 500,
'reconnectionAttempts': Infinity,
'transports': ['websocket'],
});
但该选项不是必需的,对吗?
所以我保持这个问题开放,因为当我省略那个选项时它会中断。
在我向服务器添加 express 并添加了一些路由后,我确实遇到了这个问题
当我添加
'传输':['websocket'],
它工作正常,但一段时间后断开连接
PS:当我使用不在后台或其他东西中的应用程序时,它会断开连接。
你能提供一种重现的方法吗? (我尝试开玩笑但没有运气:https://github.com/darrachequesne/jest/commits/test/socket.io)
将传输设置为 websocket 也解决了我的问题,但当然关闭了不幸的 http 轮询。 重现步骤:
我在 iOS 上也有同样的问题,添加选项'transports': ['websocket']
的临时解决方案也对我有用。
配置:
我正在尝试在我的本机 android 上连接 socket.io。 但是,它没有连接。 我尝试了一些教程,iOS 工作正常,但 Android 不是。 我已经尝试了'transports':['websocket']
但仍然没有工作:( .. 任何建议或想法或示例代码?
我的后端是 Nodejs,它也使用了 socket.io。 谢谢!
我正在尝试在我的本机 android 上连接 socket.io。 但是,它没有连接。 我尝试了一些教程,iOS 工作正常,但 Android 不是。 我已经尝试了
'transports':['websocket']
但仍然没有工作:( .. 任何建议或想法或示例代码?我的后端是 Nodejs,它也使用了 socket.io。 谢谢!
你有没有找到任何解决方案,我在 Android 上的 react-native 上也有同样的问题。
同样的问题
大家好,我的套接字有问题
当我检查时它显示超时
socket.on('connect_error', (err) => {
console.log('error123',err)
这是我的代码
用于反应原生端
从'socket.io-client'导入io;
var socket = io.connect('http://localhost:8888',{transsports: ['websocket'],upgrade:false});
socket.on('news', function (data) {
控制台日志(数据);
socket.emit('我的另一个事件', { my: 'data' });
});
socket.on('connect_error', (err) => {
console.log('error123',err)
});
服务器端:
var app = require('express')();
var server = require('http').Server(app);
var io = require('socket.io')(server);
服务器。听(8888);
// 警告:app.listen(80) 在这里不起作用!
app.get('/', function (req, res) {
res.sendFile(__dirname + '/index.html');
});
io.on('connection', function (socket) {
socket.emit('news', { 你好: 'world' });
socket.on('我的另一个事件',函数(数据){
控制台日志(数据);
});
});
索引.html
我已经存货需要帮助
即使我在android上连接socket-io也有问题。 RN 可以作为客户端连接,但是对于 react web 应用程序来说是一样的,但对于 react 移动应用程序来说是一样的。 请提出解决方案。
尝试将 socket.io-client 降级到 1.7.2,它对我有用。
我在将 iOS 上的 websocket (socket.io-client, trnasport:['websocket']) 与网络服务器连接时遇到问题。
有趣的是,当我在设备上打开“Debug JS Remotely”时,它会起作用。
这可能是 iOS 上的 react-native 版本的问题。 只是好奇是否有人面临同样的问题。
最有用的评论
我在将 iOS 上的 websocket (socket.io-client, trnasport:['websocket']) 与网络服务器连接时遇到问题。
有趣的是,当我在设备上打开“Debug JS Remotely”时,它会起作用。
这可能是 iOS 上的 react-native 版本的问题。 只是好奇是否有人面临同样的问题。