3

背景: 我正在将一个在 Web 服务器上的本地磁盘上存储图像和文档的旧应用程序转移到 PaaS Azure Web 应用程序,并使用 Azure 文件存储来存储和提供文件。

问题:

我注意到有时文件下载的 url 第一次失败,页面上的图像链接在我刷新之前断开,或者第一次下载失败,然后下一次成功。我猜这是由于 Azure 文件存储的工作方式存在一些问题,并且它还没有启动或其他原因。我观察到的唯一一致的线程是,当我第一次使用它时,这似乎发生在早上一两次。我猜也许我的帐户必须增加或其他什么,所以它在第一轮还没有准备好。我试图想出重现的步骤,但我无法重现症状。如果我的预感是正确的,我将不得不等到明天早上再尝试。如果/可以的话,我会发布更详细的错误信息。

    var fullRelativePath = $"{_fileShareName}/{_fileRoot}/{relativePath}".Replace("//","/");
    return $"{_fileStorageRootUrl}{fullRelativePath}{_fileStorageSharedAccessKey}";

谢谢!

4

1 回答 1

0

所以已经有一段时间了,但我记得我能够解决这个问题,所以我会凭记忆写这个。为了能够通过 URL 从文件存储中访问图像,您需要使用 SAS 令牌。我已经有了,这就是为什么我对此感到困惑。我不确定这是否是理想的解决方案,但我最终所做的只是在 url 的末尾附加了一些随机字符,在 SAS 令牌之后,这使它工作。我的猜测是,这以某种方式使其独一无二,这可能有助于它绕过一些行为不正常的缓存机制。

我会看看我是否可以从我的档案中挖掘出工作示例。如果是这样,我会将其附加到此答案中。

于 2020-10-08T16:12:56.980 回答