通过这种方式 Base64 编码可以更为快捷方便得对前端的各种图片资源进行优化 。我们看一个具体的例子:
可以明显看到 Base64 编码将一幅图片数据编码成一串字符串,并使用该字符串代替图像地址 。尽管乍一眼看上去没有任何图片相关的内容,但它最终渲染出的毫无疑问是一张完整的图片效果 。
当然使用 Data URL 来进行 Base64 图片编码并不是完美的,它有着两个不容忽视的缺点:
无法被浏览器缓存也就意味着每次访问都需要重新请求资源,这对于服务器压力是比较大的 。那有没有办法,能将这些数据也放入浏览器缓存中呢?
加快加载小技巧
其实大部分网站的背景图构成,是一个宽高只有几个像素的小图片,通过将它平铺成为背景图 。通常我们将小图片保存成 GIF 或 PNG 格式,然后在 CSS 的 background-image 属性中引用图片地址 。但是浏览器本身并不在意 URL里写的是什么,只是需要通过它获取需要的数据 。
所以我们完全可以使用 CSS 样式文件,让 Data URL 形式的图片存储在 CSS 样式表中 。这样浏览器就会缓存 CSS 文件,也就会缓存图片,能够进一步提高页面加载效率 。
上图就是一个简单的使用案例,通过这种方式既避免了让背景图片独自产生一次 HTTP 请求的情况,还让背景图片和 CSS 文件一起被浏览器缓存起来,避免了每次打开网页都加载一次背景图片的情况,让改善用户的浏览体验更为快速流畅 。
通过 Date URL 技术与 Base64 编码的结合有效减少 HTTP 请求,让用户访问体验更好,这其实是我们一个开发过程中的小技巧,希望看完后能够带给大家一些帮助 。
base64编码是什么?Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64就是一种基于64个可打印字符来表示二进制数据的方法 。可查看RFC2045~RFC2049,上面有MIME的详细规范 。
Base64编码是从二进制到字符的过程,可用于在HTTP环境下传递较长的标识信息 。采用Base64编码具有不可读性,需要解码后才能阅读 。
Base64由于以上优点被广泛应用于计算机的各个领域,然而由于输出内容中包括两个以上“符号类”字符(+, /, =),不同的应用场景又分别研制了Base64的各种“变种” 。为统一和规范化Base64的输出,Base62x被视为无符号化的改进版本 。
扩展资料:
Base64编码可用于在HTTP环境下传递较长的标识信息 。例如,在Java Persistence系统Hibernate中,就采用了Base64来将一个较长的一个标识符(一般为128-bit的UUID)编码为一个字符串,用作HTTP表单和HTTP GET URL中的参数 。
在其他应用程序中,也常常需要把二进制数据编码为适合放在URL(包括隐藏表单域)中的形式 。此时,采用Base64编码不仅比较简短,同时也具有不可读性,即所编码的数据不会被人用肉眼所直接看到 。
秒懂生活扩展阅读
- 经史子集指的是什么书 经史子集
- 螃蟹黄不凝固可以吃吗
- 描写亲子的词语有哪些
- 有没有关于汉武帝的小说
- 毛衣上面的油渍用什么洗得掉
- 花信堂 花信
- 挖掘机流量怎么调
- 描写山景优美的成语
- 临近邻近这两个词语的意思
- 一千章以上的好看的玄幻小说