use time.Compare to simplify comparison

This commit is contained in:
WeidiDeng 2025-02-08 09:46:22 +08:00
parent b2385bac2d
commit 5e40605358
No known key found for this signature in database
GPG Key ID: 25F87CE1741EC7CD

View File

@ -132,8 +132,7 @@ func (fsrv *FileServer) serveBrowse(fileSystem fs.FS, root, dirPath string, w ht
if ifModSinceStr := r.Header.Get("If-Modified-Since"); ifModSinceStr != "" {
// https://datatracker.ietf.org/doc/html/rfc7231#section-7.1.1.1
ifModSince, err := http.ParseTime(ifModSinceStr)
lastModTrunc := listing.lastModified.Truncate(time.Second)
if err == nil && (lastModTrunc.Equal(ifModSince) || lastModTrunc.Before(ifModSince)) {
if err == nil && listing.lastModified.Truncate(time.Second).Compare(ifModSince) <= 0 {
w.WriteHeader(http.StatusNotModified)
return nil
}