可以在Gin(golang)中缓存静态文件吗?
我试过了:
router := gin.Default()
router.Static("/assets", "./assets")
但每当我刷新页面时,我都会收到状态码为200的回复。我假设它应该是304(或类似),但https://github.com/gin-gonic/gin没有提到HTTP缓存(至少目前为止)。
如何在杜松子酒中处理静态文件缓存?
答案 0 :(得分:1)
如果您使用的是Chrome,则可能是以下原因:
您可能已在DevTools的“首选项”面板中选择了“禁用缓存(打开DevTools时)”选项。 Chrome is sending Cache-control:no-cache header
答案 1 :(得分:0)
issue 1222仍然有效,但评论为:
状态代码304不会指示缓存文件,但未修改其中一个。
但你错了。这足以启用HTTP Conditional Get:
r := gin.Default()
r.Static("/assets", "./assets")
返回资产中的文件,包括HTTP标头
Last-Modified
浏览器的下一个请求会发送相应的If-Modified-Since
标头,Gin将使用304 Not Modified
回复该标头。