socket.io不能在Chrome移动设备上工作,但它在隐身模式下工作
我正在使用AngularJS下的nodeJs和socket.io。
套接字在桌面(所有浏览器)上工作得非常好。 但不是在移动。
那么… Socket d'ont在Chrome移动工作,期待在隐身模式。 这是一些代码:
服务器端:
io.on('connection', function(socket){ user = { id: socket.id, socket: socket }; console.log('connection received'); console.log(user.id); socket.emit('files', lib.all());
客户端
socket.on('files', function(data){ var streams = data; if(streams){ $scope.streams = streams; } });
lib.all()函数正常工作。 而且我有一个angular度工厂来处理socket.io(这也工作正常)。
在铬手机套接字不接收或发射任何东西。 但他们在隐身模式下按预期工作。 以及他们在Android的Firefox工作。
我不是Chrome的专家, 但我怀疑有什么特别/奇怪的事情发生。 防火墙? 代理?
有人知道这个解决方法吗?
谢谢,祝你有美好的一天!
PS:在启用了仿真的Chrome桌面上工作正常。
编辑:我创立了什么是这样的:
Chrome移动“数据保护”选项。 谁使用谷歌服务器减less数据的人。
套接字可能在通过Google服务器时遇到麻烦..仍然是一个解决方法可能是伟大的。
您是否使用任何JavaScript的完整性属性?
对于具有SHA-256不匹配的bootstrap.js,CDN存在问题,导致内容被Chrome数据保护程序阻止。
我通过更改src="//my.cdn.js
到src="https://my.cdn.js