Base64 是基于 64 个可打印字符 A-Z、a-z、0-九、+、/ 来表示二进制数据的表示方法,经常使用于数据在网络中的传输。本篇将分别介绍其编码、解码以及实际运用。segmentfault
Base64 本质是一种将二进制转为文本的方案。基本规则以下:服务器
以一个实际的例子 "YOU" 为例,其编码过程以下:网络
由上表格可知 "YOU"对应的 Base64 编码为:"WU9V"。post
对于要待编码的字符数若是不是 3 的倍数时候,会用 0 去填充,编码出来后用 = 号表示,如: "ME" 其编码以下:编码
将 4 个字节变为 3 个字节;spa
在 Node 中提供 Buffer 模块,能够进行二进制或者字符与 Base64 的想换转换,其代码以下:code
const buf2 = Buffer.alloc(2); buf2.write("M", 0); buf2.write("E", 1); buf2.toString("base64"); //TUU= // base64 解码 const decodeBase64 = new Buffer("TUU=", "base64").toString(); //ME
Base64 有着普遍的使用,如:blog
[1] Base64 的原理、实现及应用图片
[2] Base64是如何进行的get