0

我正在使用 zerorpc 模块在节点和 python 之间进行通信。我能够从节点调用 python 脚本,但没有在 python 中获取传递的参数,而是得到错误为“TypeError:ord() 预期的长度为 1 的字符串,但找到了 memoryview”。node版本是v4.4.5,python版本是2.7

蟒蛇脚本

    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");
4

1 回答 1

0

这是 msgpack 的纯 python 实现而不是本机库绑定的常见问题。仔细检查 msgpack 包的安装:

pip install --reinstall msgpack

随意从 repo 中尝试这个分支,看看它是否有帮助,我知道我尝试解决这个问题,但我不保证任何事情:https://github.com/0rpc/zerorpc-python/tree/python3。 4

(是的,这个分支适用于 python>=2.6 和 python>=3.4)

于 2016-06-22T17:54:47.873 回答