有奖捉虫:办公协同&微信生态&物联网文档专题 HOT
在脚本执行过程中,util.base64Decoding 用于 base64 解码。
base64Decoding(input: string, encoding?: "std" | "rawstd" | "url" | "rawurl", mode?: "b"): string | ArrayBuffer

背景

base64 不同的编码方式:
StdEncoding 是标准的 base64 编码,见 RFC 4648 中定义。
RawStdEncoding 是标准的原始、未填充的 base64 编码,见 RFC 4648 第 3.2 节中定义;与 StdEncoding 相同,但省略了填充字符。
URLEncoding 是 RFC 4648 中定义的备用 base64 编码,通常用于 URL 和文件名。
RawURLEncoding 是 RFC 4648 中定义的未填充的替代 base64 编码,通常用于 URL 和文件名;与 URLEncoding 相同,但省略了填充字符。

参数

参数
类型
描述
input
string
要解码的字符串
encoding(可选)
string
可选,代表前文所述的不同编码方式;可选值包括 "std"、"rawstd"、"url" 或 "rawurl",不设置该值默认为 "std"
mode(可选)
string
可选,不设置则结果为 string 类型,设置为"b"则结果为 ArrayBuffer 类型

返回

类型
描述
string 或 ArrayBuffer
base64 解码得到的结果

使用样例

不指定 encoding 使用 base64Decoding 方法:
import util from 'pts/util';

export default function () {
// Hello, world
console.log(util.base64Decoding('SGVsbG8sIHdvcmxk'));
}
指定 encoding 使用 base64Decoding 方法:
import util from 'pts/util';

export default function () {
// http://www.example.com
console.log(util.base64Decoding('aHR0cDovL3d3dy5leGFtcGxlLmNvbQ==', 'url'));
}
指定 mode 使用 base64Decoding 方法:
import util from 'pts/util';

export default function () {
// [object ArrayBuffer]
console.log(util.base64Decoding('SGVsbG8sIHdvcmxk', 'std', 'b'));
}