【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 将转义的字符还原成原来的格式。

相关推荐
jt君4242617 分钟前
React Native JSI 深入剖析 — 第 5 部分中文技术整理:用 HostObject 把 C++ 类暴露给 JavaScript
前端·react native
胡萝卜术19 分钟前
滑动窗口最大值:从暴力到单调队列,层层优化全解析
前端·javascript·面试
fluffyox21 分钟前
Notion 的公式栏里,藏着一台虚拟机——逆向 + 用 600 行 JS 复刻它的编译器与栈式 VM
前端
kyriewen1 小时前
2026 年了,这 6 个 npm 包可以卸载了——浏览器原生 API 已经能替代
前端·javascript·npm
铁皮饭盒3 小时前
bun直接tsx,优雅!
javascript·后端
Csvn4 小时前
Monorepo 迁移血泪史:从 Multi-Repo 到 Turborepo,这 3 个坑我帮你踩完了
前端
星栈4 小时前
Dioxus 多页面怎么做:`dioxus-router`、嵌套路由、`Outlet` 和页面组织,一篇给你讲顺
前端·rust·前端框架
用户987409238874 小时前
用 Remotion + edge-tts 打造中文教学视频全自动流水线
前端
风骏时光牛马4 小时前
Less前端工程化实战:变量混合器与项目样式分层落地
前端
假如让我当三天老蒯5 小时前
Options API(选项式 API) 和 Composition API(组合式 API)
前端·vue.js·面试