【问题标题】:Express nodejs socket.io with cordova用科尔多瓦表达 nodejs socket.io
【发布时间】:2016-05-08 00:29:02
【问题描述】:

我正在尝试在我的服务器上实现socket.io。这个服务器是一个 API (express nodejs)。

服务器端很简单,但客户端我使用phonegap/cordova

使用手机来测试我的工作,我使用浏览器 (chrome)。

这是服务器端:

var express    = require('express');        // call express
var app        = express();                 // define our app using express
var http = require('http').Server(app);
var io = require('socket.io')(http);

io.on('connection', function(socket){
  console.log('a user connected');
  console.log(socket);

    socket.on('disconnect', function () {
        console.log('socket disconnected');
    });

  io.emit('text', 'wow. such event. very real time.');

});

现在,这很简单,

但是对于客户端我完全糊涂了(cordova phonegap),

这就是我所拥有的:

index.html

<script type="text/javascript" src="http://cdn.socket.io/socket.io-1.0.3.js"></script>


<script>

    var socket = io.connect('http://localhost:8080');

    socket.on('news', function (data) {
        console.log('send')
        socket.emit('my other event', { my: 'data' });
    });
</script>

什么都没有出现,只有类似的错误

GET http://localhost:8080/socket.io/?EIO=2&transport=polling&t=1462638049681-3net::ERR_CONNECTION_REFUSED

我的服务器上什么都没有

有什么想法可以帮助我吗?谢谢:)

【问题讨论】:

  • 服务器在哪个端口监听连接?
  • 我不知道,你从服务器上看到的都是你能看到的代码
  • 是的,端口是问题,检查我的答案。它应该适合你。

标签: javascript node.js cordova sockets socket.io


【解决方案1】:

您的服务器未侦听端口 8080。这就是为什么当您尝试从浏览器连接到var socket = io.connect('http://localhost:8080'); 时,它会显示'Connection Refused'

此编辑对您有用。

var express    = require('express');        // call express
var app        = express();                 // define our app using     express
var http = require('http').Server(app);
var io = require('socket.io')(http);

io.on('connection', function(socket){
  console.log('a user connected');
  console.log(socket);
  socket.on('disconnect', function () {
    console.log('socket disconnected');
  });
  io.emit('text', 'wow. such event. very real time.');
});

//Now server would listen on port 8080 for new connection
http.listen(8080, function(){
  console.log('listening on *:8080');
});

【讨论】:

  • 就是这样!谢谢:)
猜你喜欢
  • 1970-01-01
  • 2016-12-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-08-30
  • 2018-10-02
  • 1970-01-01
  • 2018-09-12
相关资源
最近更新 更多