我使用zerorpc模块在节点和python之间进行通信。我能够从节点调用python脚本但是没有在python中获取传递的参数而是得到错误" TypeError:ord()期望的字符串长度为1,但记忆结果发现"。 node version是v4.4.5,python版本是2.7
python脚本
import zerorpc
c = zerorpc.Client()
c.connect("tcp://127.0.0.1:4242")
print (c.hello("RPC"))
节点脚本
var zerorpc = require("zerorpc");
var server = new zerorpc.Server({
hello: function(name, reply) {
reply(null, "Hello, " + name);
}
});
server.bind("tcp://127.0.0.1:4242");
答案 0 :(得分:0)
它是msgpack的纯python实现而不是本机库绑定的常见问题。仔细检查msgpack包的安装:
pip install --reinstall msgpack
随意从回购中尝试这个分支,看它是否有帮助,我知道我尝试解决这个问题,但我不保证任何事情:https://github.com/0rpc/zerorpc-python/tree/python3.4
(是的,这个分支适用于python> = 2.6& python> = 3.4)