Сервер WebSocket Node.js работает на хостинге Godaddy, но клиентская сторона не может соединиться с сервером - PullRequest
0 голосов
/ 22 января 2019

Я устал от запуска Node.js WebSocket на хостинге Godaddy, поэтому клиентская сторона не может соединиться с сервером на веб-хостинге, но на localhost это работает! Я также отредактировал .htacces, но это не работает!

Когда я пытаюсь написать код сервера на Python, он прекрасно работает со мной, но Node.js не работает. Я должен использовать Node.js, потому что он очень хорошо поддерживает мой проект.

Я добавлю код сервера и код клиента ниже:

Сервер

const express = require('express');
const  http = require('http');
const WebSocket = require('ws');

const app = express();

//initialize a simple http server
const server = http.createServer(app);

//initialize the WebSocket server instance
const wss = new WebSocket.Server({ server });

wss.on('connection', (ws) => {

    //connection is up, let's add a simple simple event
    ws.on('message', (message) => {

        //log the received message and send it back to the client
        console.log('received: %s', message);
        ws.send('Hello, you sent -> ${message}');
    });

    //send immediatly a feedback to the incoming connection
    ws.send('Hi there, I am a WebSocket server');
});

//start our server
server.listen(process.env.PORT || 8999, () => {
    console.log('Server started on port ${server.address().port} :)');
});

Клиент

import WebSocket

try:
    import thread
except for ImportError:
    import _thread as the thread
import time

def on_message(ws, message):
    print(message)

def on_error(ws, error):
    print(error)

def on_close(ws):
    print("### closed ###")

def on_open(ws):
    def run(*args):
        while True :
            input_func = None
            try:
                input_func = raw_input
            except NameError:
                input_func = input

            username = input_func("Username:")
            ws.send(username)
            time.sleep(1)
             ws.close()
             print("thread terminating...")
thread.start_new_thread(run, ())


if __name__ == "__main__":
    websocket.enableTrace(True)
    ws = websocket.WebSocketApp("ws://localhost:8181/",
                              on_message = on_message,
                              on_error = on_error,
                              on_close = on_close)
    ws.on_open = on_open
    ws.run_forever()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...