js实现base64转换
有三种方式
1.第一种是使用jquery的base64.js,在https://github.com/beatgammit/base64-js 上下载base64.js
使用如下命令对数据进行base64的编码与解码:
加密使用:Base64.encode(con);
解密使用:Base64.decode(con);
案例如下:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> <script src="javascripts/base64.js"></script> <script src="javascripts/jquery.min.js"></script> </head> <body> <input type="text" class="content"> <button onclick='submit()'>加密</button> <button onclick="showtext()">解密</button> <script> var encodeStr = ''; function submit() { let con = document.querySelector('.content').value; encodeStr= Base64.encode(con); console.log(encodeStr); $.ajax({ method: 'GET', url: '/test', data: { title:encodeStr }, success:function(res) { console.log(res) } }) } // 解密 function showtext() { var decodeStr = Base64.decode(encodeStr); console.log(decodeStr); } </script> </body> </html>
2.使用js自带的转为base64的方法:
js中内置的base64编码和解码。
var encodedData = window.btoa("Hello, world"); // 编码 var decodedData = window.atob(encodedData); // 解码
兼容性IE10以上和其他浏览器都支持,还是相对不错的,要是移动端都支持。
借两张 MDN的图片,要是真遇到IE怎么办,引入polyfill库,引入第三方库,或者直接不进行编码。
3.node中自带的base64编码与解码方法
node中自带的base64的编码与解码分为三种:普通字符串/十六进制/图片
(1)普通字符串
//编码 new Buffer(String).toString('base64'); //解码 new Buffer(base64Str, 'base64').toString();
(2)十六进制Hex
//编码 new Buffer(String, 'base64').toString('hex'); //解码 new Buffer(base64Str, 'hex').toString('utf8');
(3)图片
const fs = require('fs'); //编码 function base64_encode(file) { let bitmap = fs.readFileSync(file); return new Buffer(bitmap).toString('base64'); } //解码 function base64_decode(base64str, file) { var bitmap = new Buffer(base64str, 'base64'); fs.writeFileSync(file, bitmap); }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现