【问题标题】:How to publish Json using rabbitmqadmin command如何使用 rabbitmqadmin 命令发布 Json
【发布时间】:2017-05-05 16:46:09
【问题描述】:
我想使用 rabbitmqadmin 命令行发布 Json 消息。我们怎么能做到这一点,因为我正在阅读我们只能在有效负载中发送字符串消息,如下所示
rabbitmqadmin publish exchange=default routing_key=test payload="hello, world"。
但我想发送这样的内容:
rabbitmqadmin publish exchange=default routing_key=test payload=file.json
我们如何在命令行中做到这一点?
【问题讨论】:
标签:
json
rabbitmq
rabbitmq-exchange
rabbitmqctl
rabbitmqadmin
【解决方案1】:
没有“API”,但您可以这样做:
python rabbitmqadmin publish \
exchange=amq.default routing_key=test \
payload="$(cat myjson.json)"
我试过了:
➜ bash python rabbitmqadmin publish \
exchange=amq.default routing_key=test \
payload="$(cat myjson.json)"
Message published
【解决方案2】:
这可能取决于您在另一端使用的库,但要正确处理 msg(否则它是一个字符串),我需要更多:
./rabbitmqadmin publish exchange=foo routing_key=foo.bar.baz \
properties='{"content_type":"application/json"}' \
payload='{}' payload_encoding='string'
注意content_type 带下划线。