w=10=重量 w=11=重量

OData-Version header in odata v4

在 odata v4 中,OData 客户端可以在请求中包含 OData-MaxVersion header 以指定可接受的最大响应版本。 这是否意味着 odata v2 客户端仍然可以通过指定 "OData-MaxVersion : 2" header 与 odata v4 服务器通信? odata v4 提供程序是否必须能够支持客户端的较低协议版本?

是的,V2 客户端可以与 V4 服务器通信。客户端 应该 在请求中使用 OData-Version request header. If a V2 client wants a V2 response from a V4 service, then the client must include the OData-MaxVersion header 来识别其协议版本。例如:

GET http://host/MyEntitySet

OData-Version: 2.0
OData-MaxVersion: 2.0

但 OData v4 服务并非 必须支持较低协议版本的客户端。 conformant V4 服务可能会以 4XX 级错误响应 V1-V3 客户端。