python 2.7 中的 zerorpc 模块抛出错误
zerorpc module throwing error in python 2.7
我正在使用 zerorpc 模块在节点和 python.Im 之间进行通信,能够从节点调用 python 脚本但没有在 python 中获取传递的参数,而是收到错误 "TypeError: ord() expected string of length 1, but memoryview found"。
节点版本是 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");
这是 msgpack 的纯 python 实现而非本机库绑定的常见问题。仔细检查 msgpack 包的安装:
pip install --reinstall msgpack
请随意尝试 repo 中的这个分支,看看它是否有帮助,我知道我尝试解决这个问题,但我不保证任何事情:https://github.com/0rpc/zerorpc-python/tree/python3.4
(是的,此分支适用于 python>=2.6 和 python>=3.4)
我正在使用 zerorpc 模块在节点和 python.Im 之间进行通信,能够从节点调用 python 脚本但没有在 python 中获取传递的参数,而是收到错误 "TypeError: ord() expected string of length 1, but memoryview found"。 节点版本是 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");
这是 msgpack 的纯 python 实现而非本机库绑定的常见问题。仔细检查 msgpack 包的安装:
pip install --reinstall msgpack
请随意尝试 repo 中的这个分支,看看它是否有帮助,我知道我尝试解决这个问题,但我不保证任何事情:https://github.com/0rpc/zerorpc-python/tree/python3.4
(是的,此分支适用于 python>=2.6 和 python>=3.4)