0

我正在尝试使用Azure 计算机视觉 API (Azure 认知服务)分析我的图像

但问题是我的图像存储在具有私有访问权限的 Blob 容器中,这意味着如果没有 SAS 令牌,它将无法访问。因此,当我尝试使用我的图像 URL + SAS调用计算机视觉 API 时,它给出了错误的请求

您也可以在此站点中轻松重现此问题

在此处输入图像描述

4

2 回答 2

0

不确定您是否可以将最可能不允许跨域资源共享 (CORS) 的演示网页等同于不允许 SAS 令牌的计算机视觉 API。存储帐户(您可以控制)和 Web 应用程序(您无法控制)都需要允许 CORS,因为它们是跨域的。我的建议是建立一个调用计算机视觉 API 的 Azure Web,这样你就可以在两者上启用 CORS。

https://docs.microsoft.com/en-us/rest/api/storageservices/cross-origin-resource-sharing--cors--support-for-the-azure-storage-services

于 2019-02-19T18:08:34.600 回答
0

我快速尝试了一下,以确保这只是对您提供的网站上的网络演示的限制。

我可以确认托管在 blob 上、通过 SAS 签名访问的图像正在使用 API,请参阅下面的测试,其中我得到了200 OK一个有效的回复内容:

演示

我还确认它不在网络演示中:我猜他们只是确保提供的 URL 字符串以jpgjpeggifbmppng

于 2019-02-19T21:47:50.857 回答