问题描述
我对Web开发非常陌生,因此有关以下事项的任何提示将非常有用! 因此,使用javascript编写的客户端应该与python编写的服务器进行通信。我正在尝试在运行UBUNTU和Windows OS的两台PC之间建立Websocket连接 当我使用localhost在UBUNTU上运行它们时,它们工作得很好。 同样,当服务器在UBUNTU中并且客户端在Windows中时,一切正常。 仅当服务器位于Windows中并且客户端位于UBUNTU中时,我才不断遇到相同的错误。 “连接建立错误:net :: ERR_CONNECTION_TIMED_OUT。
我尝试关闭Windows中的防火墙设置,但没有用。
任何输入将不胜感激!
Python服务器
Collecting email
Using cached https://files.pythonhosted.org/packages/71/e7/816030d3b0426c130040bd068be62b9213357ed02896f5d9badcf46d1b5f/email-4.0.2.tar.gz
Complete output from command python setup.py egg_info:
Traceback (most recent call last):
File "<string>",line 1,in <module>
File "c:\python64bit\lib\site-packages\setuptools\__init__.py",line 18,in <module>
import setuptools.version
File "c:\python64bit\lib\site-packages\setuptools\version.py",in <module>
import pkg_resources
File "c:\python64bit\lib\site-packages\pkg_resources\__init__.py",line 36,in <module>
import email.parser
File "C:\Users\tpottel\AppData\Local\Temp\pip-install-v3uek9nu\email\email\parser.py",line 10,in <module>
from cStringIO import StringIO
ModuleNotFoundError: No module named 'cStringIO'
----------------------------------------
Command "python setup.py egg_info" Failed with error code 1 in C:\Users\tpottel\AppData\Local\Temp\pip-install-v3uek9nu\email\
JavaScript客户端
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()
解决方法
好的,我发现了问题所在。 完全忘记了我必须更改路由器设置才能进行端口转发。