我正在爲Android創建離子應用程序,它將通過套接字與簡單的Node.js服務器進行通信。爲此我使用socket.io。我也在客戶端使用Angular.js。文件未找到socket.io ionic
我一直在努力讓連接工作大約一個星期。我不想在這裏添加,我絕不是專家,甚至不習慣JavaScript。我一直在清除問題和錯誤,但是這一個錯誤讓我崩潰了。
無法加載資源:服務器與404(未找到)狀態 http://EXTERNAL_IP:3000/socket.io/?EIO=3&transport=polling&t=1431009277925-0
對我來說,這似乎是客戶端試圖從服務器獲取socket.io文件迴應,但該文件在服務器上不存在。我有socket.io.js在客戶端的文件結構本地文件和HTML鏈接它像這樣:
<script src="js/vendor/socket-io.js"></script>
我在控制檯收到此錯誤都當我經由實時重載服務器運行,當應用程序部署到我的銀河S5運行android 5.0
我已經嘗試了很多來自本網站和其他人的建議,但無濟於事。也許有我的硬件設置,不想玩的很好?
我一直在關注這個教程: http://www.htmlxprs.com/post/6/creating-a-realtime-image-sharing-app-with-ionic-and-socketio-tutorial
但是,代碼拒絕正常工作。
server.js
var server = require('http').createServer();
var io = require('socket.io')(server);
io.sockets.on('connection', function(socket){
console.log("Socket connected");
socket.on('disconnect', function(){
console.log("Socket disconnected");
});
socket.on('echo', function(msg){
console.log("Recieved msg: " + msg);
socket.emit('echo', msg);
})
});
server.listen(3000);
services.js
angular.module('MyApp.services', []).factory('socketio', function($rootScope) {
var socket = io.connect("http://EXTERNAL_IP:3000");
return {
on: function (eventName, callback) {
socket.on(eventName, function() {
var args = arguments;
$rootScope.$apply(function() {
callback.apply(socket, args);
});
});
},
emit: function (eventName, data, callback) {
socket.emit(eventName, data, function() {
var args = arguments;
$rootScope.$apply(function() {
if (callback) {
callback.apply(socket, args);
}
});
})
}
};
});
controllers.js
angular.module("MyApp.controllers", [])
.controller("SocketCtrl", ["$scope", 'socketio', function($scope, socketio){
console.log("attempting to connect");
socketio.on("connect", function(){
console.log("Connected");
});
socketio.on("echo", function(msg){
console.log("Received msg: " + msg);
});
}]);
如果任何人有任何指針,我會非常感激。
有同樣的問題,兄弟..看看這個 [你需要使用白名單科爾多瓦插件] [ 1] [1]:http:// stackoverflow。com/questions/30132885/ionic-app-can-connect-cors-enabled-server-with-http – Anmol