如何使用 HTTP 读取 Azure 服务总线订阅

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

我尝试严格使用带有共享访问签名 (SAS) 的 REST 作为身份验证方法来使用 Azure 服务总线主题和订阅。使用服务总线队列时,我可以作为 REST API 发送和接收消息,并且当我创建主题时,我可以使用相同的方法向其发送消息。但是,我无法弄清楚使用相同方法通过订阅读取消息的过程,并且到目前为止我找到的所有示例都使用服务总线库,而不是简单的 REST API。

我的问题是您是否可以使用 REST API 模型从服务总线订阅中读取数据。如果是这样,是否有一篇 Microsoft 文章描述其工作原理?

我尝试的是在生成 SAS 时使用主题的 URI,并且与队列一样,尝试使用 DELETE 方法读取消息:

curl -X DELETE -H "Authorization: $SAS" https://<redacted>.servicebus.windows.net/mytopic/messages/head
<Error><Code>400</Code><Detail>The specified HTTP verb (DELETE) is not valid. To know more visit https://aka.ms/sbResourceMgrExceptions. . TrackingId:f2f08774-ea08-4346-ac95-45f5d20cbcea_G23, SystemTracker:<redacted>:Topic:mytopic, Timestamp:2024-02-27T12:49:54</Detail></Error>%  

我希望如果您可以使用 REST 写入主题,您也应该能够使用相同的方法从关联的订阅中读取内容。

rest azureservicebus azure-servicebus-topics azure-servicebus-subscriptions
1个回答
0
投票

上面 Jesse Squire 的评论就是答案...您需要在 URL 中指示主题和订阅,才能使用 HTTP 从服务总线主题读取消息。

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