31

我正在尝试访问 Azure 中为 Azure 文件存储格式的文件提供的 URL,但是我在下面收到此错误。有可能得到这个吗?为什么他们会在无用的情况下提供公共 URL?另外,如何直接从 IIS 访问它?

<Error>
<Code>InvalidHeaderValue</Code>
<Message>
The value for one of the HTTP headers is not in the correct format. RequestId:5d681103-0a1a-00cc-5555-5s4849000000 Time:2016-02-04T14:06:50.1786949Z
</Message>
<HeaderName>x-ms-version</HeaderName>
<HeaderValue/>
</Error>
4

4 回答 4

30

Gaurav 已经在这里提到了一个类似的问题,它说您应该使用“共享访问签名”。在 Azure 的存储帐户设置中,您会找到一个主题“共享访问签名”。单击“生成 SAS”后,您将获得一个“SAS 令牌”,您需要将其附加到您的 URL。

共享访问签名

于 2017-05-18T08:52:20.777 回答
10

如果使用 Azure 文件服务共享文件,则必须在资源 URL 后添加 SAS 令牌。例如https://testiiju5zra.file.core.windows.net/alexaskillaudio/lamb.mp3?sv=SDFCSGDJ01231%&SDDFXsuSDFSDSDSSFD

或者,您也可以使用 Azure Blob 执行完全相同的操作。如果您使用 Blob,则不必在资源 URL 之后添加额外的令牌。只需在 Blob 上创建一个容器并将其公开。您可以访问您的文件,例如
https://testiiju5zra.blob.core.windows.net/blobaudiosource/lamb.mp3

于 2017-11-06T07:17:40.340 回答
6

Mike,
您收到的错误表明您缺少 x-ms-version 标头。但是一旦你设置了它,如果你没有通过身份验证,你会收到另一个错误。您可以参考https://msdn.microsoft.com/en-us/library/azure/dn194274.aspx以获取所需标头的列表。或者,您可以使用客户端库而不是 REST API 来处理请求。

于 2016-02-18T23:45:39.897 回答
2

尝试改用 blob。这是一篇如何设置它的文章。

https://docs.microsoft.com/en-gb/azure/storage/blobs/storage-blob-static-website-how-to?tabs=azure-portal

于 2020-09-23T09:13:37.043 回答