Further document ShallowEtagHeaderFilter limitations
This commit improves the documentation for the `ShallowEtagHeaderFilter`, stating that it is only meant to support a subset of conditional HTTP requests: GET requests with "If-None-Match" headers. Other headers and state changing HTTP methods are not supported here, as the filter only operates on the content of the response and has no knowledge of the resource being served. Closes gh-30517
This commit is contained in:
parent
b7b9f2cb6b
commit
430a24e6bc
|
@ -69,9 +69,10 @@ written to the response and computing an MD5 hash from it. The next time a clien
|
|||
it does the same, but it also compares the computed value against the `If-None-Match`
|
||||
request header and, if the two are equal, returns a 304 (NOT_MODIFIED).
|
||||
|
||||
This strategy saves network bandwidth but not CPU, as the full response must be computed
|
||||
for each request. Other strategies at the controller level, described earlier, can avoid
|
||||
the computation. See xref:web/webmvc/mvc-caching.adoc[HTTP Caching].
|
||||
This strategy saves network bandwidth but not CPU, as the full response must be computed for each request.
|
||||
State-changing HTTP methods and other HTTP conditional request headers such as `If-Match` and `If-Unmodified-Since` are outside the scope of this filter.
|
||||
Other strategies at the controller level can avoid the computation and have a broader support for HTTP conditional requests.
|
||||
See xref:web/webmvc/mvc-caching.adoc[HTTP Caching].
|
||||
|
||||
This filter has a `writeWeakETag` parameter that configures the filter to write weak ETags
|
||||
similar to the following: `W/"02a2d595e6ed9a0b24f027f2b63b134d6"` (as defined in
|
||||
|
|
|
@ -46,6 +46,10 @@ import org.springframework.web.util.WebUtils;
|
|||
* (e.g. a {@link org.springframework.web.servlet.View}) is still rendered.
|
||||
* As such, this filter only saves bandwidth, not server performance.
|
||||
*
|
||||
* <p>State-changing HTTP methods and other HTTP conditional request headers such as
|
||||
* {@code If-Match} and {@code If-Unmodified-Since} are outside the scope of this filter.
|
||||
* Please consider using {@link ServletWebRequest#checkNotModified(String, long)} instead.
|
||||
*
|
||||
* @author Arjen Poutsma
|
||||
* @author Rossen Stoyanchev
|
||||
* @author Brian Clozel
|
||||
|
|
Loading…
Reference in New Issue