无法从 Web 访问 Azure Blob 中的某些图像(但有些可以)

Some Images In Azure Blob Can't Be Accessed From Web (But Some Can)

我们有一个 public Azure blob,其中包含超过 300,000 个图像文件。我们用来上传文件的方法是通过 Cloudberry Drive 映射驱动器。

上传所有图片并通过 https://ourazureaccount.blob.core.windows.net/ourblob/imagefile.jpg 抽查后,我们遇到间歇性问题。

从网络上加载的一些图片效果很好。但是其他人从网络浏览器中提出了这个错误:

错误:代码=BlobNotFound

当图像失败并显示“BlobNotFound”时,我可以浏览到 CloudBerry 驱动器和路径并正常查看图像文件。所以我知道文件存在。

有谁知道为什么有些图片从网络上加载正常,而其他图片加载失败?

看起来像是一个 URI 字符问题,post 并查看 url,这些 url 与其他的比较有效。

如果 URL 个字符是问题所在,请小心这些字符并改用编码值

  • 空白字符(space、制表符等)
  • 像这些特殊字符,粗体字符是正确的编码值,如果它们出现应该使用:
    • + 表示 space(space 不能用在 URL 中)。 %2B
    • / 分隔目录和子目录。 %2F
    • ?分隔实际的 URL 和参数。 %3F
    • % 指定特殊字符。 %25
    • #表示书签。 %23
    • & 在URL中指定的参数之间的分隔符。 %26