【问题标题】:Nodejs : WebSocket doesn't seem to accept connectionsNodejs:WebSocket 似乎不接受连接
【发布时间】:2016-01-13 05:55:16
【问题描述】:

我在 Openshift 上托管了一个简单的 node.js 服务器,但它似乎不接受连接,即使它正在侦听端口。我的js文件的代码如下:

var ipaddress = process.env.OPENSHIFT_NODEJS_IP || "127.0.0.1";
var port      = process.env.OPENSHIFT_NODEJS_PORT || 8080;

var players = [];

var WebSocketServer = require('ws').Server
var http = require('http');

console.log("ok");

var server = http.createServer(function(request, response) {
    console.log((new Date()) + ' Received request for ' + request.url);
    response.writeHead(200, {'Content-Type': 'text/plain'});
      response.write("Welcome to Node.js on OpenShift!\n\n");
      response.write(ipaddress);
      response.write(port);
      response.end("Bye");
});

server.listen( port, ipaddress, function() {
    console.log((new Date()) + ' Server is listening on port 8080');
});

var wss = new WebSocketServer({
    server: server,
    autoAcceptConnections: true
});
wss.on('connection', function(ws) {
  console.log("New connection");
  ws.on('message', function(message) {
    ws.send("Received: " + message);
  });
  ws.send('Welcome!');
});

console.log("Listening to " + ipaddress + ":" + port + "...");

function player(id, x, y){
    this.id = id;
    this.x = x;
    this.y = y;
}

但是,当我尝试从 android 模拟器连接到此套接字时,我没有得到响应。 android studio中的连接代码如下:

public void connectSocket(){
        try {
            socket = IO.socket("http://testapp-weihao.rhcloud.com:8080");
            socket.connect();
        } catch(Exception e){
            System.out.println(e);
        }
    }
    public void configSocketEvents(){
        socket.on(Socket.EVENT_CONNECT, new Emitter.Listener() {
            @Override
            public void call(Object... args) {
                Gdx.app.log("SocketIO", "Connected");
                player = new Starship(playerShip);
            }
        }
...

我的代码有什么问题吗?

【问题讨论】:

标签: javascript android node.js websocket openshift


【解决方案1】:

Nvm 我发现了问题。显然,对于 Openshift,websocket 侦听端口 8080,但是当连接到它时,应用程序必须连接到端口 8000

【讨论】:

    猜你喜欢
    • 2014-02-11
    • 2013-02-23
    • 2012-09-21
    • 2021-09-09
    • 2017-12-16
    • 2011-05-21
    • 2016-04-10
    • 1970-01-01
    • 2015-08-26
    相关资源
    最近更新 更多