微信公共号url地址出错,调用上次设置地址.

开发微信公共号时总是会遇到要修改公共号里自定义菜单的地址,修改过后有些手机会重新请求错误(上次)的地址。

针对这个问题,我采用重新关注公共号、清楚公共号内容、清楚浏览器缓存的方式,前两种均不得解决,第三种不能推广使用。

经过研究发现微信浏览器确实是在webvIEw的上层做的缓存:就是如果请求过了这个地址,就会存在本地,之后不取线上了。

解决方案是    在调试阶段或者频繁更新的页面加入以下头信息

 <meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" />
<meta http-equiv="Pragma" content="no-cache" />
<meta http-equiv="Expires" content="0" />

这样微信浏览器对这个页面将会一直上线拉取,稳定性还在测试中。

http-equiv顾名思义,相当于http的文件头作用,它可以向浏览器传回一些有用的信息,以帮助正确和精确地显示网页内容,与之对应的属性值为content,content中的内容其实就是各个参数的变量值。

1、Expires(期限) 
说明:可以用于设定网页的到期时间。一旦网页过期,必须到服务器上重新传输。 
2、Pragma(cache模式) 
说明:是用于设定禁止浏览器从本地机的缓存中调阅页面内容,设定后一旦离开网页就无法从Cache中再调出

3、Cache-Control 清除缓存(再访问这个网站要重新下载!)

有兴趣的童鞋还可以试试路由重定向、Microsoft URL Rewrite Module等服务器端的方法。

上一篇:iPhone应用中如何避免内存泄露?


下一篇:使用ImageView