在本地服务器上,这些设置有效
CHAT_WS_SERVER_HOST = '0.0.0.0'
CHAT_WS_SERVER_PORT = 3000
CHAT_WS_SERVER_PROTOCOL = 'ws'
并且聊天正常,但是在Heroku上出现错误(Chrome):
WebSocket与'ws://0.0.0.0:41540 / jgvnf53ky1m1lxt1vrka9lcnfilwhkrv / Pechkin的连接失败:连接建立错误:net :: ERR_CONNECTION_REFUSED
在Heroku上,我使用这样的设置:
CHAT_WS_SERVER_HOST = '0.0.0.0'
CHAT_WS_SERVER_PORT = os.environ['PORT'];
CHAT_WS_SERVER_PROTOCOL = 'ws'
Python代码websocket = new WebSocket(base_ws_server_path + '{{ request.session.session_key }}/' + opponent_username);
客户端上的JS代码websocket = new WebSocket(base_ws_server_path + 'jgvnf53ky1m1lxt1vrka9lcnfilwhkrv/' + opponent_username);
Fihishws://0.0.0.0:41540/jgvnf53ky1m1lxt1vrka9lcnfilwhkrv/Pechkin
我读到这是由于证书(wss \ https)而引起的问题,但是我现在不使用他...或者使用了错误的IP
0.0.0.0
是指本地服务器。当您的浏览器连接到该地址时,它将到达运行该浏览器的计算机(例如您的笔记本电脑)。由于您希望它连接到Heroku应用,因此您需要将值0.0.0.0
替换为Heroku应用的主机名,例如your-app-name.herokuapp.com
。这样,浏览器将通过Internet连接到您的Heroku应用。浏览器中的URL应该看起来像ws://your-app-name.herokuapp.com:...