I have a RabbitMQ 3.4.2 instance with a web management plugin installed.
When I push to the message {\'operationId\': 194}
to the queue using Python\'s komb
You need to de-serialize the output.
import json
payload = json.loads(payload)
operation_id = payload['operationId']
In addition {'operationId': 194}
is not valid JSON. Although it looks like you use double quotes in the screenshot, but make sure you replace the single quotes with double quotes.
Edit:
So you are correct, kombu should handle this. Looking at the code it's likely that the header is case-sensitive. Change the properties header from Content-Type
to content-type
.
I had to use content_type
instead of content-type
(an underscore instead of a hyphen).
This is a pretty questionable design decision, because the standard everybody knows is content-type.