我托管了我的应用程序,并为socket提供了端口1000。我检查网络选项卡运行正常。 但我无法从我的离子应用中发光。
angular.module('starter.controllers', ['ionic','angular-jwt','btford.socket-io','angularMoment'])
.controller('AppCtrl', function($scope,socket) {
socket.on('connect', function(data) {
});
socket.emit('something',data);
})
.factory('socket',function(socketFactory){
if (!window.cordova) {
var myIoSocket = io.connect('http://localhost:1000'); //this work
} else {
var myIoSocket = io.connect('http://example.com:1000'); //this don't when I run my app in a real device
}
mySocket = socketFactory({
ioSocket: myIoSocket
});
return mySocket;
});
奇怪的是,当我在localhost中通过离子服务器在浏览器中运行我的app时,我能够发出声音。
我看过cors并且也做了
<access origin="*"/>
<allow-navigation href="*" />
在我的离子应用程序的config.xml中。
那些并不能解决我的问题。我还咨询了关于我的ngix防火墙的digitalocean,他们说不会阻止websocket。
我也咨询过离子的帮助,他们怀疑它是科尔多瓦问题。