背景 我正在移动一个遗留应用程序,该应用程序将图像和文档存储在Web服务器上的本地磁盘上,转移到PaaS Azure Web应用程序,并使用Azure文件存储来存储和提供文件。
问题:
我注意到有时文件下载的url第一次失败,页面上的图像链接都被破坏,直到我刷新或第一次下载失败,然后成功完成下一次。我猜这是由于Azure文件存储如何工作并且没有启动或某些问题的一些问题。我观察到的唯一一致的线索是,当我第一次使用它时,这似乎发生了一两次。我猜也许我的帐户必须提升或者其他东西,所以它在第一轮就没准备好了。我试图提出重现的步骤,但我无法重现症状。如果我的预感是正确的,我将不得不等到明天早上才能尝试。如果可以的话,我会发布更详细的错误信息。
var fullRelativePath = $"{_fileShareName}/{_fileRoot}/{relativePath}".Replace("//","/");
return $"{_fileStorageRootUrl}{fullRelativePath}{_fileStorageSharedAccessKey}";
谢谢!
答案 0 :(得分:0)
已经有一段时间了,但是我记得我能够解决这个问题,所以我将从内存中写出来。为了能够通过URL从文件存储访问图像,您需要使用SAS令牌。我已经拥有了,这就是为什么我对此感到困惑。我不确定这是否是理想的解决方案,但是我最后要做的只是在SAS令牌后的URL末尾添加一些随机字符,然后使其工作。我的猜测是,这种方式使它变得独一无二,这可能有助于它绕过某些行为异常的缓存机制。
我将看看是否可以从档案中挖掘出工作示例。如果是这样,我会将其附加到此答案中。