「東雲 忠太郎」の平凡な日常のできごと

「東雲 忠太郎」の平凡な日常のできごと

2023.12.31
XML
カテゴリ: カテゴリ未分類


If-Match ヘッダーは、HTTPリクエストにおいて条件付きで更新や削除などの操作を行う際に使用されるヘッダーです。具体的には、指定したETag(Entity Tag)値とサーバー上の現在のETag値が一致した場合にのみ、操作が実行されるようにします。ETagは通常、リソースの状態を表すハッシュや識別子として利用され、クライアントがリソースの変更を検知するために使用されます。





データを取得してETagを取得する:


最初にデータを取得し、そのレスポンスヘッダーからETag値を取得します。

GET /_api/web/lists/getbytitle('YourList')/items(ItemID)
レスポンスヘッダー:

HTTP/1.1 200 OK

ETag: "1"


ここで、"1" がETag値です。


更新リクエストを送信する際にIf-Matchヘッダーを含める:


更新を行う際に、取得したETag値を If-Match ヘッダーに含めます。これにより、サーバーが期待するETag値と一致しない場合は更新が拒否されます。


PATCH /_api/web/lists/getbytitle('YourList')/items(ItemID)

Content-Type: application/json;odata=verbose

Accept: application/json;odata=verbose

If-Match: "1"


リクエストボディには更新したいデータが含まれます。If-Match ヘッダーに指定したETag値とサーバー上の現在のETag値が一致する場合のみ、更新が許可されます。


このようにして、If-Match ヘッダーはコンカレンシー制御(Concurrency Control)の一環として使用され、複数のクライアントが同時に同じリソースを更新しようとした場合に競合を防ぎます。





お気に入りの記事を「いいね!」で応援しよう

Last updated  2023.12.31 15:32:54


【毎日開催】
15記事にいいね!で1ポイント
10秒滞在
いいね! -- / --
おめでとうございます!
ミッションを達成しました。
※「ポイントを獲得する」ボタンを押すと広告が表示されます。
x
X

© Rakuten Group, Inc.
X
Mobilize your Site
スマートフォン版を閲覧 | PC版を閲覧
Share by: