Ste*_*fen 4 python browser if-modified-since flask
我正在recent.rss通过python烧瓶提供动态创建,当然这种方式总是通过它发送200 OK.我打算通过Expires在未来一周设置标题并检查浏览器是否发送来解决此问题If-Modified-Since.
如果是这样(在比较日期之后)我会做return nothing, 304而不是return response,但根据Firebug和request.environ我的浏览器从来没有发送If-Modified-Since过那个资源.
我知道我可以将数据保存到文件中并使用Web服务器将其作为真正的静态文件提供,但我最终可能需要通过WSGI提供静态文件,即使不是,我也想知道为什么这样做不会工作.
谢谢你的帮助.
Joa*_*uer 12
RFC 2616 HTTP/1.1在14.25 If-Modified-Since中有此注释:
处理
If-Modified-Since头字段时,某些服务器将使用精确的日期比较函数而不是小于函数来决定是否发送304(未修改)响应.为了在发送If-Modified-Since用于缓存验证的头字段时获得最佳结果,建议客户端尽可能使用在先前Last-Modified头字段中接收的确切日期字符串.
这表示您应该Last-Modified在希望/希望客户端发送时发送标头If-Modified-Since.