相关文章推荐
强悍的领结  ·  《系统科学与系统工程学报(英文)》-清华大学 ...·  1 周前    · 
可爱的领带  ·  外国语学院-贵州师范学院招生信息网·  1 年前    · 
热情的煎鸡蛋  ·  展·演系列2018新印象画派周小军油画展·  1 年前    · 
逆袭的豆腐  ·  上饶市教育局直属中学2012年公开招聘教师公 ...·  1 年前    · 
正直的作业本  ·  日本学生制服大改革,男生竟能穿短裙上课?看似 ...·  1 年前    · 
小百科  ›  vue.js客服系统实时聊天项目开发(十七)解决url get传参后通过base64解密问题-腾讯云开发者社区-腾讯云
url base64
活泼的针织衫
1 年前
作者头像
唯一Chat
0 篇文章

vue.js客服系统实时聊天项目开发(十七)解决url get传参后进行base64解密问题

前往专栏
腾讯云
开发者社区
文档 意见反馈 控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
发布
首页
学习
活动
专区
工具
TVP 最新优惠活动
返回腾讯云官网
社区首页 > 专栏 > 陶士涵的菜地 > vue.js客服系统实时聊天项目开发(十七)解决url get传参后进行base64解密问题

vue.js客服系统实时聊天项目开发(十七)解决url get传参后进行base64解密问题

作者头像
唯一Chat
发布 于 2023-02-17 13:03:35
647 0
发布 于 2023-02-17 13:03:35
举报

有些参数需要在url的GET里传递,但是为了防止特殊字符问题,我转成了base64编码。

但是js进行解码的时候,总是报错:

报错: Failed to execute 'atob' on 'Window': The string to be decoded is not correctly encoded.

这是因为base64在url中会进行url编码,+号会被转成%20

这就需要我们在拿到get参数后,进行url解码,js自带的解码函数会把%20转成空格,这时就会转码失败

下面函数是一些兼容处理

function urlDecode(str) {
  return decodeURIComponent(str.replace(/\%20/g, '+'));
// Base64解密
function b64DecodeUnicode(str) {
    str=urlDecode(str);
  return decodeURIComponent(atob(str.replace(/\_/g, '/').replace(/\-/g, '+'))
 
推荐文章
强悍的领结  ·  《系统科学与系统工程学报(英文)》-清华大学经济管理学院
1 周前
可爱的领带  ·  外国语学院-贵州师范学院招生信息网
1 年前
热情的煎鸡蛋  ·  展·演系列2018新印象画派周小军油画展
1 年前
逆袭的豆腐  ·  上饶市教育局直属中学2012年公开招聘教师公告_ 公告公示_ 上饶市 ...
1 年前
正直的作业本  ·  日本学生制服大改革,男生竟能穿短裙上课?看似瞎眼骚操作,却 ...
1 年前
今天看啥   ·   Py中国   ·   codingpro   ·   小百科   ·   link之家   ·   卧龙AI搜索
删除内容请联系邮箱 2879853325@qq.com
小百科 - 百科知识指南
© 2024 ~ 沪ICP备11025650号