ホームページ >バックエンド開発 >PHPチュートリアル >微信中浏览器缓存了不该缓存的网页?

微信中浏览器缓存了不该缓存的网页?

WBOY
WBOYオリジナル
2016-06-06 20:43:301240ブラウズ

服务端 用的 python的flask框架
返回静态文件代码如下
flask.send_file('../static/js/main.js',cache_timeout=0)

request headers如下:

<code>GET /static/js/main.js?__inline=true HTTP/1.1
Host: anglestreet.duapp.com
Connection: keep-alive
Cache-Control: max-age=0
Accept: */*
If-None-Match: "flask-1409227359.0-21401-527044139"
If-Modified-Since: Thu, 28 Aug 2014 12:02:39 GMT
User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/36.0.1985.125 Chrome/36.0.1985.125 Safari/537.36
DNT: 1
Referer: http://anglestreet.duapp.com/
Accept-Encoding: gzip,deflate,sdch
Accept-Language: zh,zh-CN;q=0.8
Cookie: BAEID=81F2D83EAD7D00091521BA62EDC1894B:FG=1; 
</code>

response headers如下:

<code>HTTP/1.1 200 OK
Content-Type: application/javascript
Last-Modified: Thu, 28 Aug 2014 12:02:39 GMT
Cache-Control: public, max-age=0
Expires: Fri, 29 Aug 2014 15:21:59 GMT
ETag: "flask-1409227359.0-21401-527044139"
Set-Cookie: session=eyJyb2xlIjoiYWRtaW4iLCJ1c2VybmFtZSI6ImFkbWluIn0.BuIsFw.LKeoAWvqoRfNYlU-Sk1kaz-icc4; HttpOnly; Path=/
Date: Fri, 29 Aug 2014 15:21:59 GMT
Server: BWS/1.0
Content-Length: 21401
</code>

在chrome浏览器下无问题. 在微信链接中打开则经常出现版本过期的情况, 必须手动刷新

回复内容:

服务端 用的 python的flask框架
返回静态文件代码如下
flask.send_file('../static/js/main.js',cache_timeout=0)

request headers如下:

<code>GET /static/js/main.js?__inline=true HTTP/1.1
Host: anglestreet.duapp.com
Connection: keep-alive
Cache-Control: max-age=0
Accept: */*
If-None-Match: "flask-1409227359.0-21401-527044139"
If-Modified-Since: Thu, 28 Aug 2014 12:02:39 GMT
User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/36.0.1985.125 Chrome/36.0.1985.125 Safari/537.36
DNT: 1
Referer: http://anglestreet.duapp.com/
Accept-Encoding: gzip,deflate,sdch
Accept-Language: zh,zh-CN;q=0.8
Cookie: BAEID=81F2D83EAD7D00091521BA62EDC1894B:FG=1; 
</code>

response headers如下:

<code>HTTP/1.1 200 OK
Content-Type: application/javascript
Last-Modified: Thu, 28 Aug 2014 12:02:39 GMT
Cache-Control: public, max-age=0
Expires: Fri, 29 Aug 2014 15:21:59 GMT
ETag: "flask-1409227359.0-21401-527044139"
Set-Cookie: session=eyJyb2xlIjoiYWRtaW4iLCJ1c2VybmFtZSI6ImFkbWluIn0.BuIsFw.LKeoAWvqoRfNYlU-Sk1kaz-icc4; HttpOnly; Path=/
Date: Fri, 29 Aug 2014 15:21:59 GMT
Server: BWS/1.0
Content-Length: 21401
</code>

在chrome浏览器下无问题. 在微信链接中打开则经常出现版本过期的情况, 必须手动刷新

问题在于Cache-Control: public, max-age=0,设为Cache-Control: private就不会缓存页面

我也遇到了同样的问题,场景如下:
在a页面只能显示点赞的数量,点击点赞图标可以进入b页面,在b页面可以点赞或者取消点赞。

现在在a页面点赞数为0,我进入b页面点赞,点赞成功以后按安卓手机的返回键回到a页面,但是a页面的点赞数并没有加1。。。 试用了很多方法也不行,楼主的问题解决了吗

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。