【Vue】vue中针对地址栏参数进行加解密

在 Vue.js 应用中,如果你想要对 URL 地址栏中的参数进行 base64 加密处理,可以使用 JavaScript 的内置函数 btoa 进行编码,并且使用 atob 进行解码。这里提供一个简单的示例来展示如何实现这个功能。

加密参数

首先,你需要安装或者使用一个 base64 编码的函数。对于简单的字符串编码,可以直接使用 btoa 函数:

java 复制代码
function base64Encode(str) {
    // 对字符串进行 base64 编码
    return window.btoa(unescape(encodeURIComponent(str)));
}

这个函数首先会使用 encodeURIComponent 对字符串进行编码,确保特殊字符被转义,然后使用 window.btoa 对字符串进行 base64 编码。

解密参数

为了能够从 base64 格式还原原始数据,可以使用以下函数:

java 复制代码
function base64Decode(base64Str) {
    // 对 base64 字符串进行解码
    return decodeURIComponent(escape(window.atob(base64Str)));
}

这个函数先使用 window.atob 对 base64 字符串进行解码,然后使用 decodeURIComponent 将转义的字符还原成原来的格式。

相关推荐
xixixin_3 小时前
【React】为什么移除事件要写在useEffect的return里面?
前端·javascript·react.js
嘗_3 小时前
react 源码2
前端·javascript·react.js
我只会写Bug啊7 小时前
Vue文件预览终极方案:PNG/EXCEL/PDF/DOCX/OFD等10+格式一键渲染,开源即用!
前端·vue.js·pdf·excel·预览
扯蛋4388 小时前
LangChain的学习之路( 一 )
前端·langchain·mcp
Mr.Jessy8 小时前
Web APIs学习第一天:获取 DOM 对象
开发语言·前端·javascript·学习·html
午安~婉8 小时前
javaScript八股问题
开发语言·javascript·原型模式
西西学代码9 小时前
Flutter---个人信息(5)---持久化存储
java·javascript·flutter
芝麻开门-新起点9 小时前
flutter 生命周期管理:从 Widget 到 State 的完整解析
开发语言·javascript·ecmascript
ConardLi9 小时前
Easy Dataset 已经突破 11.5K Star,这次又带来多项功能更新!
前端·javascript·后端
冴羽9 小时前
10 个被严重低估的 JS 特性,直接少写 500 行代码
前端·javascript·性能优化