简体   繁体   中英

Websocket between python server and javascript client

I am very new to web development, so any tips regarding the following matter will be useful, So. the client written in javascript is supposed to communicate with the server written in python, I am trying to establish websocket connection between two PCs running UBUNTU and Windows OS They work perfectly fine when I run them using UBUNTU. using localhost, Also. everything works fine when the server is in UBUNTU and the client is in Windows. Only when the server is located in Windows and the client is in UBUNTU I keep running into the same error: 'Error in connection establishment: net:.ERR_CONNECTION_TIMED_OUT.

I tried turning off the firewall settings in Windows, but it didn't work.

Any input will be very appreciated!

Python Server

import asyncio
import websockets

async def hello(websocket, path):
    name = await websocket.recv()
    print(f"< {name}")

    greeting = f"Hello {name}!"

    await websocket.send(greeting)
    print(f"> {greeting}")

start_server = websockets.serve(hello, "localhost", 8765)

asyncio.get_event_loop().run_until_complete(start_server)
asyncio.get_event_loop().run_forever()

Javascript Client

var ws = new WebSocket("ws://localhost:1337/");

ws.onopen = function(){
    console.log("Connection is Established");
    ws.send("Message to Send");
};

ws.onmessage = function(evt) {
    var received_msg = evt.data;
    console.log(received_msg);
};

Okay, I found what was wrong. Completely forgot that I had to change my router settings for port forwarding.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM