如何使用window.btoa base64对接口数组进行加密处理

举报
孙叫兽 发表于 2021/03/27 23:38:33 2021/03/27
【摘要】 大家好,我是孙叫兽,前端全栈工程师,uniapp技术交流群:1149933135 项目采用uniapp+uView开发; uiapp官方文档:https://uniapp.dcloud.io/ uview官方文档:http://uviewui.com/components/intro.html 接口传参的操作步骤请参考我上一篇文章——>uniap...

大家好,我是孙叫兽,前端全栈工程师,uniapp技术交流群:1149933135

项目采用uniapp+uView开发;

uiapp官方文档:https://uniapp.dcloud.io/

uview官方文档:http://uviewui.com/components/intro.html

接口传参的操作步骤请参考我上一篇文章——>uniapp框架之如何修改接口传参的参数 

我这个显示的是加密过的,这里只演示过程。

window.btoa base64加密 一般格式是:window.btoa(‘123456’);

这个不支持数组直接加密的,因此我们需要将数组转换成字符串,如果后端处理了,我们就不用转成字符串啦,具体可以使用console.log(this.personId.attendees);打印一下。

这个不用转成字符串的


  
  1. this.personId.attendees = window.btoa(this.personId.attendees);
  2. this.personId.charge = window.btoa(this.personId.charge);

转成字符串的


  
  1. this.personId.attendees = window.btoa(this.personId.attendees.toString());
  2. this.personId.charge = window.btoa(this.personId.attendees.toString());

因为上面的对一个数组四个人一起加密处理的,后台解密需要解密四次,我们可以将数组拆分成4个分开加密(有多少人分割成多少个数组再加密)。


  
  1. var result = [];
  2. for(var i=1;i<=this.personId.attendees.length;i++){
  3. result.push(this.personId.attendees.slice(i,i+1));
  4. }
  5. return result;
  6. // console.log(result);
  7. //对参与人进行加密(可以多个人)
  8. this.personId.attendees = window.btoa(result);
  9. // console.log(this.personId.attendees);
  10. //对主责人进行加密处理(只能选一个人)
  11. this.personId.charge = window.btoa(this.personId.attendees.toString());

 

文章来源: sunmenglei.blog.csdn.net,作者:孙叫兽,版权归原作者所有,如需转载,请联系作者。

原文链接:sunmenglei.blog.csdn.net/article/details/109307438

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。