2014-09-25 64 views
1

使用RabbitMQ C#API,我將如何檢查是否存在從給定隊列到給定交換的綁定?RabbitMQ C#API:如何檢查綁定是否存在?

很多RabbitMQ調用都是冪等的,所以有些人可能會說這些檢查對於這些情況是不必要的,但我認爲它們在測試中會很有用。

+1

如果amqp不讓你檢查這個,你可以使用兔子的休息api http://hg.rabbitmq.com/rabbitmq-management/raw-file/rabbitmq_v3_3_5/priv/www/api/index.html特別是,'bindings'函數返回現有綁定的完整列表。 – 2014-09-25 19:01:05

+0

@WiktorZychla感謝您的建議。我希望可以使用C#API來完成它,但如果這不是一個選項,我會嘗試一下你的建議。 – Anshul 2014-09-25 19:05:19

+0

不通過客戶端API。但是,也許管理API:http://hg.rabbitmq.com/rabbitmq-management/raw-file/rabbitmq_v3_3_4/priv/www/api/index.html – 2014-09-25 19:51:27

回答

2

您可以使用其REST API調用並查看綁定是否存在。

你有API參考的本地副本:your_server_name:15672/api/或者你可以在their online docs

找到它,您可以撥打GET調用之一:

  • /api/exchanges/vhost
  • /name/bindings/destination

在適當的替換在那裏的虛擬主機或名稱。

或者你可以只叫:

  • /api/bindings

讓所有的人。

從那裏,你需要解析返回的JSON對象。

請注意,您可能需要進行身份驗證,但他們的示例顯示如何執行此操作。