前提・実現したいこと
node.jsのサーバとpythonのサーバでソケット通信したいのですが、
具体的には、node.jsの方をクライアント側にして、pythonサーバにデータを送信するようなことをやりたいです。
発生している問題・エラーメッセージ
ただ、現状のコードでは、通信はできてるみたいですが、データがうまく送信されず、どこが間違えてるのかについてご指摘いただきたいです。
該当のソースコード
クライアント側
javascript
1var WebSocketClient = require('websocket').client; 2var client = new WebSocketClient(); 3 4client.connect('ws:localhost:7070/'); 5client.onopen = function (event) { 6 console.log("test"); 7 client.send("Here's some text that the server is urgently awaiting!"); 8}; 9
サーバ側
python
1 host = "localhost" 2 port = 7070 3 serversock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) 4 serversock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) 5 serversock.bind((host,port)) 6 serversock.listen(10) 7 8 print ('Waiting for connections...') 9 if request.environ.get('wsgi.websocket'): 10 ws = request.environ['wsgi.websocket'] 11 while True: 12 clientsock, client_address = serversock.accept() 13 data = clientsock.recv(4096) 14 print(data.decode('utf-8')) 15 print("this is the message from:")
###実行結果
実行してみると、通信はどうやらできてるみたいですけど、メッセージが送られていない
pythonサーバー側の出力:
Waiting for connections... GET / HTTP/1.1 Upgrade: websocket Connection: Upgrade Sec-WebSocket-Version: 13 Sec-WebSocket-Key: xxxxxxxx Host: localhost:7070 this is the message from:
node.jsクライアント側の出力はなし→javascriptで仕込んでた"console.log("test")は実行されなかった
どこに問題があるのか、ご指摘いただけると幸いです。
あなたの回答
tips
プレビュー