如何使用虚拟主机“/”进行RabbitMQ API调用?

问题描述 投票:0回答:2

以下对 RabbitMQ 的 API 调用:

http -a USER:PASS localhost:15001/api/queues/

返回队列列表:

[
    {
         ...
         "messages_unacknowledged_ram": 0,
         "name": "foo_queue",
         "node": "rabbit@queue-monster-01",
         "policy": "",
         "state": "running",
         "vhost": "/"
     },
     ...
]

请注意,

vhost
参数是
/

如何使用

/
vhost
进行
/api/queues/vhost/name
调用,以返回特定队列的详细信息?

我已经尝试过:

  • localhost:15001/api/queues/\//foo_queue
  • localhost:15001/api/queues///foo_queue

但是都失败了

404 Object Not Found
:

rabbitmq urlencode
2个回答
31
投票

URL 编码 成功了。网址应该是:

localhost:15001/api/queues/%2F/foo_queue
                           ⬆⬆⬆

郑重声明,我认为 REST 资源不应该命名为

/
,尤其是默认情况下不应该命名。


-1
投票

我遇到的问题是用 %2F 替换虚拟主机修复了第一部分。

然后我得到的是队列是否有 - 或 。在像 q.somequeue 这样的队列名称中给我一个“未找到”错误。

我尝试用 %2D 替换 - 但它恢复到某些队列 我尝试更换 .与 %2E 但它恢复到 q.somequeue

那么,我该如何排序?

© www.soinside.com 2019 - 2024. All rights reserved.