Base64 详解

2024-11-18 约 596 字 预计阅读 2 分钟

Base64 编码简介

Base64 是一种基于 64 个可打印字符来表示二进制数据的方法,是一种可逆的编码方式。Base64 编码在网络上的一个常见应用是对二进制数据进行编码,以便将其纳入 data: URL 中。

图片转换为base64的作用

图片的base64编码就是可以将一幅图片数据编码成一串字符串,使用该字符串代替图片地址。我们所看到的网页上的每个图片都是需要消耗一个http请求下载而来的。也就是说图片的下载始终是要向服务器发出请求的,而base64可以解决的是在HTML下载的同时图片可同时下载到本地。

Base64编码原理

Base64的原理比较简单,每当我们使用Base64时都会先定义一个类似这样的数组:

[‘A’, ‘B’, ‘C’, … ‘a’, ‘b’, ‘c’, … ‘0’, ‘1’, … ‘+’, ‘/’] 1 上面就是Base64的索引表,字符选用了"A-Z、a-z、0-9、+、/" 64个可打印字符,这是标准的Base64协议规定。在日常使用中我们还会看到“=”或“==”号出现在Base64的编码结果中,“=”在此是作为填充字符出现,后面会讲到。

Base64编码步骤

  • 第一步,将待转换的字符串每三个字节分为一组,每个字节占8bit,那么共有24个二进制位。
  • 第二步,将上面的24个二进制位每6个一组,共分为4组。
  • 第三步,在每组前面添加两个0,每组由6个变为8个二进制位,总共32个二进制位,即四个字节。
  • 第四步,根据Base64编码对照表(见下图)获得对应的值。

示例说明