条件付き要求ヘッダー
条件付き要求ヘッダーでは、厳しい入力規則と緩い入力規則の 2 種類の検証が可能です。厳しい入力規則では、前提条件と Salesforce のリソースが正確に一致するかどうかがチェックされます。厳しい入力規則ヘッダーには、If-Match と If-None-Match があり、これらでエンティティタグ (ETag) を使用して、前提条件と Salesforce のレコードを比較します。
緩い入力規則では、Salesforce のリソースに対して前提条件がチェックされますが、両者が同一であることは保証されません。緩い入力規則ヘッダーには、If-Modified-Since や If-Unmodified-Since などがあり、前提条件と Salesforce のレコードの最終更新日が比較されます。
- PATCH または POST 要求の If-Match、If-None-Match、または If-Unmodified-Since に無効なヘッダー値を含めた場合、400 Bad Request 状況コードが返されます。
- If-Range ヘッダーはサポートされていません。
- DELETE 要求はサポートされません。
ETag
ETag ヘッダーは、sObject Rows リソースにアクセスするときに返される応答ヘッダーです。後続の要求の If-Match および If-None-Match 要求ヘッダーがコンテンツに変更があるかどうかを判断するために使用するコンテンツのハッシュです。
このヘッダーは、sObject Rows (取引先レコードのみ) リソースでサポートされています。
この例では、REST API が返す ETag を示しています。
1ETag: "U5iWijwWbQD18jeiXwsqxeGpZQk=-gzip"ETag ヘッダーの HTTP 1.1 仕様については、www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.19 を参照してください。
If-Match
If-Match ヘッダーは、ETag のリストを含む sObject Rows の要求ヘッダーです。要求しているレコードの ETag が、ヘッダーで前提条件として指定した ETag と一致する場合は、要求が処理されます。いずれの ETag とも一致しない場合は、412 Precondition Failed 状況コードが返され、要求は処理されません。
このヘッダーは、sObject Rows (取引先レコードのみ) リソースをサポートしています。
次の例では、要求に If-Match ヘッダーが含まれています。
1If-Match: "Jbjuzw7dbhaEG3fd90kJbx6A0ow=-gzip", "U5iWijwWbQD18jeiXwsqxeGpZQk=-gzip"If-Match ヘッダーの HTTP 1.1 仕様については、www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.24 を参照してください。
If-None-Match
If-None-Match ヘッダーは、If-Match の逆数である sObject Rows の要求ヘッダーです。要求しているレコードの ETag がヘッダーに指定した ETag と一致する場合は、要求が処理されません。GET または HEAD 要求では 304 Not Modified 状況コードが返され、PATCH 要求では 412 Precondition Failed 状況コードが返されます。
このヘッダーは、sObject Rows (取引先レコードのみ) リソースをサポートしています。
次の例では、要求に If-None-Match ヘッダーが含まれています。
1If-None-Match: "Jbjuzw7dbhaEG3fd90kJbx6A0ow=-gzip", "U5iWijwWbQD18jeiXwsqxeGpZQk=-gzip"If-None-Match ヘッダーの HTTP 1.1 仕様については、www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.26 を参照してください。
If-Modified-Since
If-Modified-Since ヘッダーは、時間ベースの要求ヘッダーです。要求は、ヘッダーで指定した日時以降にデータが変更された場合にのみ処理されます。いずれの ETag とも一致しない場合は、304 Not Modified 状況コードが返され、要求は処理されません。
このヘッダーでサポートされているリソースは、sObject Rows、sObject Describe、Describe Global、および Invocable Actions です。
次の例では要求に If-Modified-Since ヘッダーが含まれています。
1If-Modified-Since: Tue, 10 Aug 2015 00:00:00 GMTIf-Modified-Since ヘッダーの HTTP 1.1 仕様については、www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.25 を参照してください。
If-Unmodified-Since
If-Unmodified-Since ヘッダーは、If-Modified-Since の逆数である要求ヘッダーです。要求に If-Unmodified-Since ヘッダーを追加して実行する場合、この要求は指定した日付以降にデータが変更されていない場合にのみ処理されます。いずれの ETag とも一致しない場合は、412 Precondition Failed 状況コードが返され、要求は処理されません。
このヘッダーでサポートされているリソースは、sObject Rows、sObject Describe、Describe Global、および Invocable Actions です。
次の例では要求に If-Unmodified-Since ヘッダーが含まれています。
1If-Unmodified-Since: Tue, 10 Aug 2015 00:00:00 GMTIf-Unmodified-Since ヘッダーの HTTP 1.1 仕様については、www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.28 を参照してください。