4

RESTful サービスの ETag 機能の実装に取り​​組んでおり、できるだけ HTTP 仕様に近づけたいと考えています。ただし、仕様はおそらくあるべきほど明確ではありません。具体的には:

ヘッダー - GET リクエストのIf-Matchセマンティクスは何ですか?

おそらく、If-Matchヘッダーを使用した GET は、値が ETag の値と一致する場合、実際のリソースを200 OK (304 ではない) で返します。値が一致しない場合、412 Precondition Failedが ETag の新しい値とコンテンツなしで返されますか?

4

1 に答える 1

2

その通りですETag。a に対する 412 応答の新しい値は、仕様でIf-Matchどこにも要求されていません。省略できます。への 304 応答でのみ推奨If-None-Matchされます。おそらくそれがあなたの混乱を引き起こした場所です。

于 2013-01-13T12:26:31.493 に答える