Batch 服務遵循條件式標頭的 HTTP/1.1 通訊協定規格 ,並使用下列規則來處理指定條件式標頭的要求:
- 如果要求同時指定
If-None-Match和If-Modified-Since標頭,則會根據If-None-Match中所指定的準則來評估要求。 - 如果要求同時指定
If-Match和If-Unmodified-Since標頭,則會根據If-Match中所指定的準則來評估要求。 - 除了上述兩個條件式標頭組合之外,一個要求只能指定一個條件式標頭。 指定多個條件式標頭會導致狀態碼 400 (不正確的要求)。
若要查看作業支援哪些條件式標頭,請參閱該作業的檔 (例如 [啟用作業 ]) 。 並非所有作業都支援所有標頭。
支援條件式標頭之作業的 HTTP 回應碼
批次服務會根據 HTTP/1.1 通訊協定規格 (RFC 2616) 傳回 HTTP 回應碼。
讀取作業
下表指出當做業為讀取作業時,未符合每個條件式標頭的條件所傳回的回應碼。 讀取作業使用動詞命令 GET 或 HEAD。
| 條件式標頭 | 未符合條件時的回應碼 |
|---|---|
If-Match |
先決條件失敗 (412) |
If-None-Match |
未修改 (304) |
If-Modified-Since |
未修改 (304) |
If-Unmodified-Since |
先決條件失敗 (412) |
寫入作業
下表指出當做業為寫入作業時,未符合每個條件式標頭的條件所傳回的回應碼。 寫入作業使用動詞命令 POST、PUT、PATCH 或 DELETE。
| 條件式標頭 | 未符合條件時的回應碼 |
|---|---|
If-Match |
先決條件失敗 (412) |
If-None-Match |
先決條件失敗 (412) |
If-Modified-Since |
先決條件失敗 (412) |
If-Unmodified-Since |
先決條件失敗 (412) |