Как опубликовать Json с помощью команды rabbitmqadmin

Я хочу опубликовать сообщение Json с помощью командной строки rabbitmqadmin. Как мы можем это сделать, как я читал, мы можем отправлять только строковые сообщения в полезной нагрузке, как показано ниже Rabbitmqadmin publish exchange = default routing_key = test payload = «hello, world».

Но я хотел отправить что-то вроде этого: rabbitmqadmin publish exchange = default routing_key = test payload = file.json

Как мы можем сделать это в командной строке?


person vikash kumar    schedule 20.12.2016    source источник


Ответы (2)


это может зависеть от библиотеки, которую вы используете на другом конце, но для правильной обработки сообщения (в противном случае это была строка) мне нужно было больше:

./rabbitmqadmin publish exchange=foo routing_key=foo.bar.baz \
    properties='{"content_type":"application/json"}' \
    payload='{}' payload_encoding='string'

Обратите внимание на content_type с подчеркиванием.

person grahamrhay    schedule 15.11.2017

Нет «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
person Gabriele Santomaggio    schedule 21.12.2016