0
var epoch = time.Unix(0, 0).Format(time.RFC1123)
var headers = map[string]string{
"Expires": epoch,
"Cache-Control": "no-cache, private, max-age=0",
"Pragma": "no-cache",
"X-Accel-Expires": "0",
}
log.Errorln("no cache header")
for k, v := range headers {
rw.Header().Set(k, v)
}
http.ServeFile(rw, req, path)
我在服務器端有上述代碼塊來提供文件請求。但所提供的文件仍然在瀏覽器中緩存。 但是,而不是http.ServeFile()我用http.ServeContent()與最後修改時間戳time.Now()。如果請求有相當長的時間差,這將起作用。瀏覽器是否優先於最後修改時間而不是無緩存頭?那麼沒有緩存頭的目的是什麼?我做錯了什麼?文件被瀏覽器緩存,即使響應沒有緩存頭