fetcher: use ETag as a stronger validator than Last-Modified
As per the MDN article on HTTP caching: During cache revalidation, if both If-Modified-Since and If-None-Match are present, then If-None-Match takes precedence for the validator. https://developer.mozilla.org/en-US/docs/Web/HTTP/Caching Previously Miniflux would consider a resource unmodified if the Last-Modified header had not changed, even if the ETag had changed. With this commit, Miniflux will consider a resource modified if the ETag header has changed, even if Last-Modified has not. This fixes Bug 1 in https://rachelbythebay.com/w/2024/06/11/fsr/
This commit is contained in:
parent
c787bb5b48
commit
bf1c851093
1 changed files with 4 additions and 4 deletions
|
@ -56,12 +56,12 @@ func (r *ResponseHandler) IsModified(lastEtagValue, lastModifiedValue string) bo
|
|||
return false
|
||||
}
|
||||
|
||||
if r.ETag() != "" && r.ETag() == lastEtagValue {
|
||||
return false
|
||||
if r.ETag() != "" {
|
||||
return r.ETag() != lastEtagValue
|
||||
}
|
||||
|
||||
if r.LastModified() != "" && r.LastModified() == lastModifiedValue {
|
||||
return false
|
||||
if r.LastModified() != "" {
|
||||
return r.LastModified() != lastModifiedValue
|
||||
}
|
||||
|
||||
return true
|
||||
|
|
Loading…
Reference in a new issue