相关疑难解决方法(0)

从客户端(iOS和Android)向Sails.js服务器发送套接字请求

我正在尝试将socket.io与iOS和Android App一起使用,但这里存在一些问题.我在问是否有人确实有解决方案.

如何从客户端(iOS,Android)发送socket.io请求,我认为有iOS和Android的socket.io库,iOS lib有sendEvent/Message/JSON方法.但是,我找不到办法让帆船上的活动.https://github.com/pkyeck/socket.IO-objc https://github.com/koush/AndroidAsync 那么有什么方法可以从客户端发送socket.io事件?所以我可以像使用它一样

join: function (req, res) {
    sails.sockets.join(req.socket, req.param('room'));
    return res.ok();
  },
Run Code Online (Sandbox Code Playgroud)

有什么方法可以让我知道当前套接字连接是来自客户端(ios/android)还是web前端?

onConnect: function(session, socket) {

    console.log(session);
    console.log(socket);

  },
Run Code Online (Sandbox Code Playgroud)

当我用服务器连接套接字时,我需要url连接.我可以在网址上添加一些参数.有什么方法可以让我知道我用来连接服务器的参数是什么?

谢谢.

android websocket ios socket.io sails.js

1
推荐指数
1
解决办法
4865
查看次数

简单的Sails.js和Android示例

我真的很努力使用sails.io和android打开套接字连接.我现在想要实现的只是在sails.js服务器的控制台中打印socketid.

Android方面:

我正在使用nkzwa的socket.io.client库(编译'com.github.nkzawa:socket.io-client:0.4.2')

这是我在AsyncTask里面的android中使用的代码:

private Socket mSocket;
    {
        try {
            mSocket = IO.socket("http://192.168.0.80:3000/batches/");
        } catch (URISyntaxException e) {}
    }
@Override
    protected Void doInBackground(Void... params) {
        mSocket.connect();
        mSocket.emit("getSocketID");
}
Run Code Online (Sandbox Code Playgroud)

我的批次控制器看起来像这样:

module.exports = {
     getSocketID: function(req, res) {
        if (!req.isSocket) return res.badRequest();

        var socketId = sails.sockets.id(req.socket);
        // => "BetX2G-2889Bg22xi-jy"
        console.log(socketId)

        return res.ok('My socket ID is: ' + socketId);
    }
}
Run Code Online (Sandbox Code Playgroud)

在运行任务时,我认为我会在我的sails实例中输出控制台日志.

谁能看到我做错了什么?

sockets android node.js sails.js

1
推荐指数
1
解决办法
2470
查看次数

标签 统计

android ×2

sails.js ×2

ios ×1

node.js ×1

socket.io ×1

sockets ×1

websocket ×1