如何解决检查无需身份验证URL 是否指向 Azure 存储
我的问题如下:我有一个 URL 列表。有些指向 Azure 存储文件,有些指向常规的全局域。我想将该列表分为两部分 - 全局 URL 列表和 Azure 存储 URL 列表。它必须在没有身份验证的情况下完成,因为此时它只是一个随机 URL - 我不知道它位于哪个存储帐户以及使用什么密钥。 它也必须尽可能高效。 (如果重要的话,文件是 .png 图像)
至于现在,我想在整个列表中检查“Exists()”,这听起来像一个合法的解决方案吗?它甚至会起作用吗?也许有更有效的方法?
非常感谢!
解决方法
您可以在此处实际尝试的一种潜在黑客方法是对 URL 进行 HEAD request
。您需要做的是解析响应标头。对 Azure Blob 存储的每个请求都有一个名为 x-ms-request-id
的响应标头,其中包含一个 GUID。
您可以使用此 GUID 来区分 URL 指向 Blob 存储和全局域的场景。
- 如果它是有效的 Blob URL,您将获得状态代码 200 。
- 如果没有,您将收到状态代码 404,但您将收到 x-ms-request-id 响应标头。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。