node.js - 将 socket.io 与 cordova 和 IOS 设备一起使用

标签 node.js cordova websocket socket.io

我正在尝试使用这个简单的教程:

http://socket.io/socket-io-with-apache-cordova/

我的 node.js 工作正常,我可以毫无问题地模拟到 iOS,但是 socket.io 不工作,这是我的 javascript(与上面的教程相同):

app.initialize();

document.addEventListener('deviceready', function() {
    console.log(socket);
    socket.on('connect', function() {
        socket.on('text', function(text) {
            alert(text);
        });
    });
});

还有一件事我怎样才能调试这个 console.log?

这是我获取 socket.io 的方式(与上面的教程相同):

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

这是我的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.emit('text', 'wow. such event. very real time.');
});

server.listen(3000);

我认为,问题和教程没有告诉我如何将我的 cordova 应用程序连接到端口 3000

最佳答案

我做到了,这个教程很好,但并不完全正确。

您必须先将套接字连接到您的服务器(我使用的是本地主机和端口 3000,但如果您使用的是外部服务器,我认为您只需输入 ip 和端口):

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

然后,你调用“socket.io”,这是我的完整代码:

document.addEventListener('deviceready', function() {
        var socket = io.connect('http://localhost:3000');
        socket.on('connect', function() {
            socket.on('text', function(text) {
                alert(text);
            });
        });
    });

关于node.js - 将 socket.io 与 cordova 和 IOS 设备一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25464614/

相关文章:

javascript - 在 ec2 实例上使用 socket.io 时出现 "websocket connection invalid"错误?

python - 在 Flutter 中显示来自 websocket 的字节的实时视频

node.js - 将我的 node.js 应用程序从 Github 部署到 VPS

database - 序列化推送值

angularjs - Angular + Node + Express + Passport + oauth2orize 独特的 CORS 问题

javascript - 在 javascript 中将字符串 "009"解析为整数?

jquery - 提交 JQuery 移动表单而不重定向到 php 文件

android - DeviceInfo.uuid 未定义

javascript - Phonegap 2.5.0 地理定位不适用于 android 4.0.4

java - 如何仅使用 websockets 将 java 客户端连接到 SignalR Hub?