簡體   English   中英

角度頁面到node.js服務器套接字連接

[英]Angular page to node.js server socket connection

我對此有疑問。

這是我的node.js服務器中的代碼:

var bodyParser = require("body-parser");
var express    = require('express');
var http       = require('http').Server(app);
var io         = require('socket.io')(http);
var app        = express();

......    

io.sockets.on('connection', function(socket){
  socket.emit('welcome', { message: 'Welcome!', id: socket.id });

    socket.on('i am client', console.log);
});

app.listen(port);

和我的角度頁面:

var modulo_angular = angular.module('app', ['btford.socket-io', 'ngRoute']);
modulo_angular.factory('socket', function (socketFactory) {
    var myIoSocket = io.connect('http://myurl:8000/');
    var mySocket = socketFactory({
        ioSocket: myIoSocket
    });
   return mySocket;
});

modulo_angular.controller("appCtrl",['factoryController', 'socket',controladorSecundario]);

我得到的錯誤是:

GET http://myurl:8000/socket.io/?EIO=3&transport=polling&t=1435131076378-14 404 (Not Found)

如果我使用“ http:// localhost ”代替URL,則會得到ERR_CONNECTION_REFUSED。 我在同一個網絡中,通過vpn連接,並且打開了端口。 我的代碼中還需要其他內容嗎?

顯然,瀏覽器試圖獲取缺少的http://myurl:8000/socket.io/ 我相信這是由於您的服務器設置。

嘗試這個:

var port = 8000;
var app = express();
var server = app.listen(port); // start the server
var io = require('socket.io').listen(server); // start socketIO

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM