Can't get message when vhost contain /foo
flokor opened this issue · 0 comments
flokor commented
Hello,
I have problem in get message with vhost contain / followed by string, for example /foo
The / is not URL encoded when POST is sent to /api/queue API.
Error message :
HTTPError: 405 Client Error: Method Not Allowed for url: http://rabbitmq-xxxx/api/queues//foo/queue.test/get
Correct URL should be http://rabbitmq-xxxx/api/queues/%2Ffoo/queue.test/get
The reason urllib.parse.quote is used to quote vhost. According to documentation the / character is safe parameter by default.
urllib.parse.quote(string, safe='/', encoding=None, errors=None)
robotframework-rabbitmq/src/RabbitMq.py
Line 736 in 755c2aa