类型错误:需要类似字节的对象,而不是“二进制”

lxg*_*ril 5 python xml-rpc pickle

xmlrpc.server用来构建服务器并pickle.dumps()用来腌制一些数据。然后我xmlrpc.client用来构建一个客户端并pickle.loads()用来解开这些数据。

## server
server = SimpleXMLRPCServer(('0.0.0.0', 5005), allow_none=True)
# in _dispatch method:
result = perform_stuff()
return pickle.dumps(result)

## client
proxy = ServerProxy(f'http://{host}:{port}', allow_none=True)
result = proxy.make_rpc()
return pickle.loads(result.data)
Run Code Online (Sandbox Code Playgroud)

但是,我解决了以下问题:

我不知道类似字节的对象和“二进制”之间的区别

我尝试使用 bytes(ret) 来解决这个问题,但它还有另一个

Man*_*cob 2

给定一个Binary实例,您可以通过或实例bin获取数据。bytesbytearraybin.data

我只能从您提供的代码片段中猜测,但以下应该有效:

ret = pickle.loads(ret.data)
Run Code Online (Sandbox Code Playgroud)