2015-11-01 43 views
2

我正在使用AngularJS下的nodeJs和socket.io。socket.io不能在Chrome移动设备上工作,但它在隐身模式下工作

套接字在桌面(所有浏览器)上运行得非常好。但不是在手机上。

那么... 插槽d'ont工作铬移动,预计在隐身模式。 这里是一个比特的代码:

服务器端:

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()函数工作正常。 而我有一个角度工厂来处理socket.io(这也很好)。

在铬移动套接字不接收或发射任何东西。但他们在隐身模式下按预期工作。 以及他们工作在Android的Firefox。

我不是在Chrome中的专家。但我怀疑有什么特别/奇怪的事情发生。防火墙?代理?

有人知道这个解决方法吗?

谢谢,祝你有美好的一天!

P.S:在启用了仿真的chrome桌面上工作正常。

编辑: 我创办什么的挫折感:

Chrome行动 '数据保护' 选项。那些使用谷歌服务器减少数据的人。

套接字可能在通过Google服务器时遇到麻烦..仍然是一种解决方法。

+0

我有这个问题,以及不同的是它甚至没有在隐身加载所有固定这一点。 :/ – azariah

回答

0

您是否对任何javascript使用完整性属性?

我对于具有SHA-256不匹配的bootstrap.js的CDN存在问题,导致内容被Chrome Data Saver阻止。

我改变src="//my.cdn.jssrc="https://my.cdn.js

+0

上面的代码在我的项目中完全改变了, 我切换了前端框架,并且整个代码都是从零开始重新完成的...... 所以我无法回答你。 但是有可能是的,这个问题确实是由于来源混淆以及socket.io主机定义错误。 希望它帮助无论如何:) – donkino

相关问题