最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vue項(xiàng)目base64加解密使用方式以及解密亂碼

 更新時(shí)間:2024年05月16日 10:53:25   作者:mewmew1  
這篇文章主要介紹了vue項(xiàng)目base64加解密使用方式以及解密亂碼問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

vue項(xiàng)目base64加解密及解密亂碼

一、vue項(xiàng)目使用base64加解密

1.安裝 base64插件:

npm i js-base64 --save

2.頁(yè)面中引入:

有兩種方式:

  • (1) import {Base64} from ‘js-base64’
  • (2) let Base64=require(‘js-base64’).Base64

3.頁(yè)面中使用

  • 解密 let a=Base64.decode(route.query.token)
  • 加密 Base64.encode(password);

二、解密亂碼問題

問題:

后端返回的鏈接的token里帶有加號(hào),使用route.query.token獲取到的token里 +號(hào)會(huì)變成空格,導(dǎo)致解密后部分內(nèi)容變成亂碼。

解決方法:

1.鏈接是后端返回時(shí),需后端處理,將+號(hào)編碼變成%2B,再返回鏈接進(jìn)行跳轉(zhuǎn)即可

2.鏈接是前端寫的話,可直接使用encodeURIComponent()進(jìn)行編碼,將+號(hào)變成%2B,再進(jìn)行跳轉(zhuǎn)即可

使用Base64加密、解密以及des加密、解密

Base64加密、解密

  • 第一步:
npm  install js-base64 --save  下載依賴
  • 第二步:

直接引入即可

import { Base64 } from 'js-base64';
  • 第三步:
Base64.encode(xxxx)

其中  

  • .encode() 加密 
  • .decode() 解密

中間不需要使用加密的key等其他字符

des加密、解密

  • 第一步:
npm  install crypto-js --save  下載依賴
  • 第二步:

引入 :

import CryptoJS from "crypto-js";
  • 第三步:

封裝一下:

function encryptDes(word, keyStr, ivStr) {
  keyStr = keyStr || 'xxxx'
  ivStr = ivStr || 'xxxx'
  let key = CryptoJS.enc.Utf8.parse(keyStr)
  let iv = CryptoJS.enc.Utf8.parse(ivStr)
  let srcs = CryptoJS.enc.Utf8.parse(word)
  let encrypted = CryptoJS.DES.encrypt(srcs, key, {
    iv,
    mode: CryptoJS.mode.CBC,
    padding: CryptoJS.pad.Pkcs7
  })
  return encrypted.toString()
}
// 解密
function decryptDes(word, keyStr, ivStr) {
  try {
    keyStr = keyStr || 'xxxxx'
    ivStr = ivStr || 'xxxx'
    var key = CryptoJS.enc.Utf8.parse(keyStr)
    let iv = CryptoJS.enc.Utf8.parse(ivStr)
    var decrypt = CryptoJS.DES.decrypt({ ciphertext: CryptoJS.enc.Base64.parse(word) }, key, {
      iv,
      mode: CryptoJS.mode.CBC,
      padding: CryptoJS.pad.Pkcs7
    })
    return decrypt.toString(CryptoJS.enc.Utf8)
  } catch (err) {
    return 'false'
  }
}
export { encryptDes, decryptDes };

其中 keyStr  ivStr  需要和后端伙伴統(tǒng)一一下的秘鑰  

  • 第四步:

在組件中使用   decryptDes(xxxx) 即可

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論

澳门| 安庆市| 邹城市| 碌曲县| 英超| 珠海市| 汤原县| 紫阳县| 永春县| 旬阳县| 栾川县| 山西省| 大洼县| 松溪县| 确山县| 和林格尔县| 奈曼旗| 长春市| 灌南县| 武宁县| 永修县| 江源县| 达日县| 太仆寺旗| 临湘市| 闵行区| 靖州| 镶黄旗| 昌邑市| 正镶白旗| 藁城市| 财经| 星子县| 广汉市| 阳江市| 周口市| 乌拉特前旗| 淮北市| 连江县| 崇明县| 嘉定区|