首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在nameko rpc中传递二进制数据?

如何在nameko rpc中传递二进制数据?
EN

Stack Overflow用户
提问于 2019-03-25 14:37:02
回答 1查看 510关注 0票数 1

json似乎是nameko rpc中序列化数据的默认方式。如果我调用rpc.my_service.send(b'\x01\'),它将引发异常kombu.exceptions.EncodeError: Object of type 'bytes' is not JSON serializable

有没有办法在nameko rpc中发送二进制数据?例如,pickle。请给我举个简短的例子好吗?提前谢谢你。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-03-25 22:12:27

您可以通过在配置文件中指定pickle来使用它进行序列化。简单地说:

代码语言:javascript
复制
# config.yaml
serializer: pickle

代码语言:javascript
复制
nameko run my_service --config config.yaml

如果您需要更高级的功能,您可以构建自己的序列化程序,并再次配置服务以通过您的配置文件使用它:

代码语言:javascript
复制
# config.yaml
serializer: my_serializer
SERIALIZERS:
    my_serializer:
        encoder: 'path.to.encode.function'
        decoder: 'path.to.decode.function'
        content_type: 'application/x-my-serializer'

encode和decode函数只是接受一个值并返回一个转换后的版本。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55332375

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档