REST 協議

開發人員 > 開發人員指南 > 設計文件 > REST 協議

將 JMS 對應到 REST 有許多方式…

糟糕的非 REST

透過以下方式傳送

POST /queue/Destination

消費

GET /queue/Destination

這很糟糕,因為 GET 不是冪等的。我們可以加入使用者 ID 或使用 Cookie

GET /queue/Destination?jsessionId=....

雖然快取代理可能會持續傳回相同的訊息

使用一次性傳遞的簡單 REST

透過以下方式訂閱

POST /subscribe/consumerId/Destination  
POST /unsubscribe/consumerId/Destination

然後透過以下方式取得訊息

POST /nextMessageForMe/consumerId

如果您想要確認訊息,則

POST /ack/consumerId/messageId

批次訊息 REST ——————

POST lockNextMessage/consumerId?max=10 

-> 返回最多 10 個訊息 URL

GET message/consumerId/messageId

透過以下方式確認

DELETE /consumerId/messages/messageId

更多選項…

您可以將 ACK 訊息包含在 POST 中;因此第二個 POST 可以包含 ACK - 您也可以返回一批訊息。

Apache、ActiveMQ、Apache ActiveMQ、Apache 羽毛標誌和 Apache ActiveMQ 專案標誌是 The Apache Software Foundation 的商標。版權所有 © 2024,The Apache Software Foundation。依 Apache License 2.0 授權。