微信公众号html缓存处理

html-css08

微信公众号html缓存处理,第1张

近期在发版验证时遇到一个问题,微信公众号登入后页面显示的是老的,强制刷新后,再退出重新登入,仍然显示的是老的页面;

经过一番查找得到了解决方案:

(1)公众号放的菜单地址后加 ?version=1.0.0 每次更新页面则更新菜单;

但是这样每次发版还得修改公众号的菜单,多一步很不方便;

于是和前端一块尝试寻找到另一中解决方案:

(2)前端在html的header中加入缓存策略

<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" />

<meta http-equiv="Cache" content="no-cache" />

这样就彻底解决了缓存问题;

但是注意,往往遇到此问题时,已经缓存了没有加缓存策略的html文件,需要清除掉缓存,加载新的带缓存策略的html文件,将来才会实时更新;但是也不能让用户每个都清理缓存啊;

于是就要配合第一种解决方法,在菜单链接后面加参数,这样用户侧会重新load新版本的html(微信菜单设置发布后,有将近10分钟的延时),这样配合使用就完美解决了我们的问题;

期间多次尝试发现,微信的缓存策略和页面地址的后缀参数相关,使用相同的后缀,在不设置缓存策略下,就能回到对应的版本,很强大,也很鸡肋

浏览器根据标签语法对HTML文件的内容加以处理。

HTML是超文本标记语言,“超文本”就是指页面内可以包含图片、链接,甚至音乐、程序等。是网页文件的扩展名后缀,这类文件是一张网页。通过在记事本文件上的html语言编写出来的。

一般网页另存为后,保存到本地就是以html为扩展名的文件,双击就可以通过浏览器打开。通过这些标签可以将网络上的文档格式统一,使分散的Internet资源连接为一个逻辑整体。

扩展资料

<html></html>称为根标签,所有的网页标签都在<html></html>中。

<head>标签用于定义文档的头部,它是所有头部元素的容器。头部元素有<title>、<script>、<style>、<link>、<meta>等标签,头部标签在下一小节中会有详细介绍。

在<body>和</body>标签之间的内容是网页的主要内容,如<h1>、<p>、<a>、<img>等网页内容标签,在这里的标签中的内容会在浏览器中显示出来。

参考资料来源:百度百科-HTML

html中文乱码一般都是由于编码不一致导致,一般是代码声明或者浏览器默认的编码与文件保存的实际编码不一致造成的,解决的方法就是要代码中声明的代码要和文件保存的编码一致,这样中文就不会出现乱码的现象了。

工具原料:编辑器、浏览器

1、首先在html代码中声明字符集即编码,意思就是告诉浏览器以什么编码来解析本文件,代码如下:

<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8">

<title></title>

</head>

<body>

<p>测试中文乱码</p>

</body>

</html>

2、以上代码的中的<meta charset="UTF-8">就是声明字符集使用的utf-8。

3、声明字符集后浏览器解析的时候就会以声明的字符集去解析文档,但是要保证解析的不乱码,就要保证文件保存时候的编码格式和声明的格式一致才行,如下图:

4、选择一致的utf-8编码后保存,运行的时候就可以保证中文不会乱码了,如下图: