react CryptoJS前端加密

首先安裝 npm install crypto-js --save

var CryptoJS = require("crypto-js");

export default function encryption (params){
    let {
        data,
        type,
        param,
        key
    } = params;
    let result = JSON.parse(JSON.stringify(data));
    if (type == 'Base64') {
        param.forEach(ele => {
            result[ele] = btoa(result[ele]);
        })
    } else if (type == 'Aes') {
        param.forEach(ele => {
            let iv = key;
            key = CryptoJS.enc.Utf8.parse(key);
            iv = CryptoJS.enc.Utf8.parse(iv);
            result[ele] = CryptoJS.AES.encrypt(result[ele], key, {
                iv: iv,
                mode: CryptoJS.mode.CBC,
                padding: CryptoJS.pad.Pkcs7
            }).toString();
        })

    }
    return result;
};

使用方法
// let arr1= {
//     "password": this.pwdform.newpassword,
// }
// const user1 = encryption({
//     data: arr1,
//     type: 'Aes',
//     param: ['password']
// });

 

在需要的頁面引入,使用方法如上標記,其data裏索引對應param

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章