在 Angular 应用程序上,我尝试使用以下 URL 格式查看 Azure 上队列中的消息(其中包含多条消息):https://myaccount.queue.core.windows.net/myqueue/messages?peekonly=true
来自 Peek Messages | Microsoft Docs 。
我的请求:(_http是HttpClient的变量名)
return this._http.get('https://***.queue.core.windows.net/***/messages?peekonly=true')
它返回状态:404,statusText:“指定的资源不存在。”
我已三次检查我的请求 URL 并确认 CORS 已启用。我在这里缺少什么?
最佳答案
Azure 存储返回 404 Not Found,因为默认情况下存储服务是私有(private)的。未经授权的纯URL无法访问私有(private)资源。
我建议您使用Shared access signature授权您的请求。
转到门户上的存储帐户,单击共享访问签名边栏选项卡以生成 sas token 。 Peek消息需要(Queue/Object/Read)作为最小权限。请参阅permission by operation 。
然后将生成的 SAS token 附加到您的网址,请注意,您需要将 ?
替换为 &
,因为它是网址中的第二个查询参数。
关于angular - Azure队列休息API "Resource Not Found 404",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52769757/