Javascript的base64实现及使用
实例及实现原理如下
var uploadKey = 'avatar/20191212/userid-1.png';
// key 进行base64处理
// 第一步使用encodeURIComponent() 函数把字符串作为 URI 组件进行编码
// 第二步使用unescape() 函数对通过 escape() 编码的字符串进行解码
// 第三步使用btoa() 方法用于创建一个 base-64 编码的字符串。该方法使用 "A-Z", "a-z", "0-9", "+", "/" 和 "=" 字符来编码字符串。base64 解码使用方法是 atob() 。
var key = btoa(unescape(encodeURIComponent(uploadKey)));
var url = "http://upload.qiniup.com/putb64/12" + '/key/' + key;
运行上面代码结果如下
> var uploadKey = 'avatar/20191212/userid-1.png';
< undefined
> var key = btoa(unescape(encodeURIComponent(uploadKey)));
< undefined
> var url = "http://upload.qiniup.com/putb64/12"+'/key/'+key;
< undefined
> console.log(url)
VM7861:1 http://upload.qiniup.com/putb64/12/key/YXZhdGFyLzIwMTkxMjEyL3VzZXJpZC0xLnBuZw==
> undefined
参考如下 https://stackoverflow.com/questions/246801/how-can-you-encode-a-string-to-base64-in-javascript
我们分解执行下
> var a = encodeURIComponent(uploadKey)
< undefined
> console.log(a)
< avatar%2F20191212%2Fuserid-1.png
> undefined
< var b = unescape(a);
> undefined
< console.log(b)
avatar/20191212/userid-1.png
> undefined
< var c = btoa(b)
> undefined
< console.log(c)
YXZhdGFyLzIwMTkxMjEyL3VzZXJpZC0xLnBuZw==
> undefined
版权声明
由 durban创作并维护的 Gowhich博客采用创作共用保留署名-非商业-禁止演绎4.0国际许可证。
本文首发于 博客( https://www.gowhich.com ),版权所有,侵权必究。
本文永久链接: https://www.gowhich.com/blog/997
版权声明
由 durban创作并维护的 Gowhich博客采用创作共用保留署名-非商业-禁止演绎4.0国际许可证。
本文首发于 Gowhich博客( https://www.gowhich.com ),版权所有,侵权必究。
本文永久链接: https://www.gowhich.com/blog/997