【问题标题】:Unable to perform any File service operations on Storage V2 ZRS accounts - Getting 400 error back from service无法对 Storage V2 ZRS 帐户执行任何文件服务操作 - 从服务中返回 400 错误
【发布时间】:2019-04-02 08:37:55
【问题描述】:

我无法对 具有 ZRS 冗余的 Storage V2 帐户执行任何文件服务相关操作。据我所知,Storage V2 ZRS 账户支持文件服务。

如果我尝试在该存储帐户中列出文件共享或尝试在该帐户中创建文件共享,存储服务会返回 400 错误,说明请求标头的值之一无效。

服务抱怨 x-ms-version 标头,它抱怨的值是 2018-03-28,我认为这是正确的值 (https://docs.microsoft.com/en-us/rest/api/storageservices/version-2018-03-28)。

我已经尝试过使用 Node SDK (2.10.0) 和 .Net SDK(版本 9.3.2),并且在这两个地方我始终得到相同的结果。

我使用的代码比较简单:

        var account = CloudStorageAccount.Parse("my-connection-string");
        var client = account.CreateCloudFileClient();
        var shares = client.ListShares().ToList();//Getting 400 error here.

在我的节点应用程序中,我收到以下错误:

{
    "name": "StorageError",
    "message": "The value for one of the HTTP headers is not in the correct format.\nRequestId:86e34bf5-xxxx-xxxx-127d-6ff6df000000\nTime:2018-10-29T11:50:04.4965123Z",
    "code": "InvalidHeaderValue",
    "headername": "x-ms-version",
    "headervalue": "2018-03-28",
    "statusCode": 400,
    "requestId": "86e34bf5-xxxx-xxxx-127d-6ff6df000000"
}

相同的代码适用于具有其他冗余(例如 RAGRS)的 Storage V2 帐户。

我想知道我是否做错了什么或错过了什么。

【问题讨论】:

    标签: azure azure-storage azure-storage-files


    【解决方案1】:

    这似乎只发生在 WindowsAzure.Storage 9.3 版本的客户端上。尝试安装 WindowsAzure.Storage 9.2,它似乎工作正常。 9.3 指向 x-ms-version "2018-03-28" 而 9.2 指向 x-ms-version "2017-11-09" 似乎工作正常。 (https://docs.microsoft.com/en-us/rest/api/storageservices/protocol-version-support-for-.net-client-library-versions)

    我猜这是微软需要解决的问题。

    另外,尝试访问 V2 ZRS 存储帐户中文件共享的“访问策略”会在 Azure 门户中引发错误。他们可以联系起来

    【讨论】:

    • 感谢您的回答。我也有同样的怀疑。我已经向 Azure 存储团队提出了同样的问题。我正在等待他们的回音。
    • 所以我收到了存储团队的回复,确实这是他们的问题。他们已经解决了这个问题。我最终尝试了它,一切似乎都运行良好。感谢您抽出宝贵时间试用。
    猜你喜欢
    • 2015-01-18
    • 2021-08-31
    • 2020-04-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多