这是抛出的错误:
Headers:
Server: Azurite-Blob/3.14.1
x-ms-error-code: InvalidHeaderValue
x-ms-request-id: a3aca2f1-c0af-4af5-a54c-d7e24c188ba0
Date: Mon, 21 Mar 2022 13:22:04 GMT
Connection: keep-alive
Keep-Alive: REDACTED
Transfer-Encoding: chunked
Content-Type: application/xml
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Error>
<Code>InvalidHeaderValue</Code>
<Message>The value for one of the HTTP headers is not in the correct format.
RequestId:a3aca2f1-c0af-4af5-a54c-d7e24c188ba0
Time:2022-03-21T13:22:04.189Z</Message>
<HeaderName>x-ms-version</HeaderName>
<HeaderValue>2021-04-10</HeaderValue>
</Error>
Run Code Online (Sandbox Code Playgroud)
如果我查看 Github:https://github.com/Azure/Azurite并阅读以下描述:
API版本兼容策略
如果传入请求的 API 版本高于 Azurite,Azurite 将返回 x-ms-version 的 InvalidHeaderValue 错误(HTTP 状态代码 400 - 错误请求)。
什么可以是正确的,因为在 api 错误消息中它声称有一个 headervalue : HeaderValue: 2021-04-10 (Azurite 的最新 api 版本 3.16.0 是什么,请参阅 github)。如果您再次查看标题中的错误,则为 azurite(server) AZurite-blob/3.14.1 。随 VS2022 一起提供的版本。因此,这意味着标头值来自最新的 azurite 版本,但使用的 azurite 服务器是版本 3.14.1
我的问题是如何将本地蓝铜版本升级到 3.16.0 或将某些使用 v3.16.0 的进程降级到 3.14.1
我希望有人能在这里帮助我。提前致谢。
每个版本的 SDK 以及 Azurite 都针对特定的 REST API 版本。您收到此错误的原因是因为安装的 Azurite 版本针对的是比您正在使用的 SDK 更旧的 REST API 版本。
两种可能的解决方案:
npm update -g azurite
Run Code Online (Sandbox Code Playgroud)
我将 Visual Studio 2022 更新到版本 17.2.5。它将蓝铜矿更新至版本 3.17.1。这样就消除了这个InvalidHeaderValue运行时错误。
另外,它可能会帮助某人知道我在将 .NET 项目版本从 .NET 5 更新到 .NET 6 后开始收到此错误。
| 归档时间: |
|
| 查看次数: |
8494 次 |
| 最近记录: |