【发布时间】:2018-06-13 08:52:11
【问题描述】:
我正在尝试使用 Socket IO 在 NodeJS 服务器和 Python 客户端进程之间进行通信。开始时,我想将输入消息从 Python 进程发送到 NodeJs 进程,并且它可以 console.log 消息。
我按照https://pypi.org/project/socketIO-client/中的示例代码。
在我的 app.js(nodejs 文件)中:
var express = require("express");
var app = express();
var server = require("http").Server(app);
var io = require('socket.io')(server);
server.listen(3000,()=>{
console.log("Succesful");
});
io.on('connection',function(socket){
//data is the message I wish to receive from python
socket.on('news',(data)=>{
console.log(data);
});
});
在 python 脚本中(在我输入数据后会死掉):
from socketIO_client import SocketIO,LoggingNamespace
import logging
while True:
data = input("Enter your test data here:")
with SocketIO('localhost', 3000, LoggingNamespace) as socketIO:
socketIO.emit('news',{data : data})
socketIO.wait(seconds=1)
问题: 当我尝试执行 python 代码时,输入数据后出现此错误
File "/home/anhtumai/.local/lib/python2.7/site-
packages/socketIO_client/__init__.py", line 353, in __init__
resource, hurry_interval_in_seconds, **kw)
File "/home/anhtumai/.local/lib/python2.7/site-
packages/socketIO_client/__init__.py", line 54, in __init__
self._transport
File "/home/anhtumai/.local/lib/python2.7/site-
packages/socketIO_client/__init__.py", line 62, in _transport
self._engineIO_session = self._get_engineIO_session()
File "/home/anhtumai/.local/lib/python2.7/site-
packages/socketIO_client/__init__.py", line 76, in
_get_engineIO_session
transport.recv_packet())
StopIteration'
我需要在我的脚本(NodeJS 和 Python)中修改什么?
【问题讨论】:
标签: javascript python node.js socket.io