Springの一部であるShallowEtagHeaderFilterは、HTTP要求でIf-None-Matchヘッダーを処理します。 Http 1.1仕様の一部として、リクエストで送信されたIf-None-Matchヘッダーの内容がEtagヘッダーと同じ場合は、HTTPステータス304 - Not Modifiedが返されます。これは、Etagがクライアントとサーバー上で同じ場合、内容が同じであることを意味するので、キャッシュに役立ちます。SpringでIf-Match HTTPヘッダーを実装する
これは問題ありません。
私の質問はこれです - SpringはIf-None-MatchではなくIf-Matchヘッダー(HTTP 1.1の一部)をサポートしていますが、ShallowEtagHeaderFilterはIf -None-Matchヘッダー。私は、If-Matchヘッダーが必要です。これは、同時リクエストが前のものを上書きするのを防ぐためです。私は、Etagsが同じで、したがって彼らがエンティティの最新バージョンを持っていれば、リクエストを処理したいだけです。
私はかなり場合でも、マッチのサポートを春可能性がどのように従っていません。理論的には。 if-matchをサポートできるようにするためには、実際に生成されたオブジェクトが実際に必要ですが、フィルタにはそれらのオブジェクトがありません。後でのみ行う場合は、if-none-matchで行うように、POST/PUTユースケースではサポートは無用です。彼らはもちろんGETのためにそれをサポートすることができますが、それは理にかなっていません。誰かがなぜそれを持っている場合にのみ、文書を持っていたいのですか? – eis
>誰かがなぜそれを既に持っている場合にのみ、文書を持ちたいのですか?それは変更があるかもしれないので? (顧客を説明するjsonリソースについて考える) – gjambet