Socket.IOを使用して、Node.JSアプリがPythonバックエンドと通信できるようにしようとしています。Node.JSをクライアントとして機能させ、Pythonをサーバーとして機能させたいので、gevent-socketiopythonモジュールに加えてsocket.io-clientNode.JSモジュールを使用しています。
https://github.com/LearnBoost/socket.io-client https://github.com/abourget/gevent-socketio
これが私のPythonサーバーです:
#!/usr/bin/env python
from socketio.server import SocketIOServer
from socketio.namespace import BaseNamespace
class MyNamespace(BaseNamespace):
def on_foobar(self,data):
print 'received method for foobar'
print data
server = SocketIOServer(('localhost', 1234),resource=MyNamespace,policy_server=False)
print 'SocketIO server listening...'
server.serve_forever()
これが私のNode.JSサーバー(クライアントとして機能)です:
#!/usr/bin/env node
var io = require('socket.io-client');
var PySocket = io.connect('localhost:1234');
PySocket.emit('foobar',{'key1':'value1'});
何らかの理由で、Pythonサーバーは接続を認識していません。誰かが私が欠けているものを指摘できますか?