共用方式為


一般 HTTP 需求 (ADO.NET 資料服務架構)

本章節的規格適用於使用 ADO.NET 資料服務所支援之所有格式傳輸的資料。

用於從用戶端傳送至 ADO.NET 資料服務之要求的序列化 (Serialization) 格式是由要求的 ContentType HTTP 標頭所指定。來自資料服務之回應的格式則由要求的 Accept HTTP 標頭所指定。如<RFC 2616>(英文) 中所指定的內容,Accept 標頭會指出要求的回應限制為特定的 MIME 類型集合。

ACCEPT 標頭處理

ADO.NET 資料服務會使用下列規則來決定回應格式:

  • 如果要求包含 Accept 標頭,便使用<RFC 2616>中 14.1 節所定義的規則來剖析 Accept 標頭。

  • ADO.NET 資料服務會忽略任何標頭中指定的 ‘q’ 值規則。

  • 然後,根據後面的表格,剖析 Accept 標頭所傳回的 MIME 類型就會當做回應格式使用。

透過遵循 Accept 標頭處理規則來決定 MIME 類型的格式之後,系統會使用後面表格中摘要列出的規則來找出回應的特定 MIME 類型。

Accept 標頭中定義的 MIME 類型可能無法單獨決定單一 MIME 類型。例如,application/* 不會定義單一子型別。如果伺服器無法根據 Accept 標頭值來傳送可接受的回應,則伺服器會根據<RFC 2616>來傳送 406 回應碼,表示無法接受此要求。

群組媒體類型

要求的 Mime 類型 回應的 Mime 類型 序列化格式

*/*

application/atom+xml

ATOM/APP

text/*

不支援

不支援

application/*

不支援

不支援

個別媒體類型

要求的 Mime 類型 回應的 Mime 類型 序列化格式

text/xml

text/xml

ATOM/APP

application/xml

application/xml

ATOM/APP

application/atom+xml

application/atom+xml

ATOM/APP

application/json

application/json

JSON

回應碼

下表將顯示 ADO.NET 資料服務無法處理要求時所使用的回應碼:

回應碼 描述

400 – 錯誤要求

根據這個規格所定義的序列化規則,要求中提供的裝載格式不正確。

404 – 找不到

使用資料服務所支援之任何 HTTP 動詞的要求傳送至沒有對應至可定址資源的 URI。

406 – 無法接受

伺服器無法根據要求中的 Accept 標頭或查詢字串指示詞來傳送可接受的回應。

422 - 無法處理的實體

執行預期要變更 ADO.NET 資料服務資源狀態的 HTTP 要求導致 ADO.NET 資料服務結構描述的違規,如 PUT、POST 和 DELETE (ADO.NET 資料服務架構) 中的規則所定義。

405 – 不支援的方法

傳送至 ADO.NET 資料服務 URI 的要求使用了 URI 所識別之資源不支援的方法。

500 – 內部伺服器回應碼

執行 HTTP 要求時發生了未預期的錯誤。

另請參閱

概念

用於定址資源的 URI 格式 (ADO.NET 資料服務架構)
ADO.NET 資料服務規格