我的nodejs服务器上有一个与socket.io相关的问题。问题与socket.io相关的东西在IOS8 +中不能用于IOS移动浏览器。我搜索过它并经历了一些解决方案,但没有任何效果。
以下是问题链接:
https://github.com/Automattic/socket.io/issues/976
http://www.codedisqus.com/7yzSqUgqge/socketio-working-on-desktop-safari-chrome-but-not-mobile.html
这是代码
io.sockets.on('connection', function(socket) { process.emit('client-connection', socket.id); socket.on('authenticate', function(message) { console.log('Authenticating client with key "' + message.authToken + '"'); authenticateClient(socket, message); }); socket.on('message', function(message) { if (io.sockets.sockets[socket.id] && message.hasOwnProperty('type')) { if (message.hasOwnProperty('channel')) { if (settings.clientsCanWriteToChannels || ChannelIsClientWritable(message.channel)) { process.emit('client-message', socket.id, message); } } return; } }); socket.on('disconnect', function () { console.log("in disconnect"); process.emit('client-disconnect', socket.id); cleanupSocket(socket); }); })
请告诉我。
基本问题是,当我尝试在浏览器上打开会话时,它工作正常,如果我尝试在iPhone设备浏览器上执行相同操作,则无法正常工作。
答案 0 :(得分:0)
根据要求,问题是IOS套接字未在移动浏览器中通过SSL打开。我已经使用完整的代码包重新安装了SSL证书,它对我有用。
由于配置不完整,SSL代码包可能存在一些问题。