首先安装 npm install crypto-js --save
import CryptoJS from 'crypto-js'; //引入
// 登录加密方法
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.ECB,//加密模式
padding: CryptoJS.pad.Pkcs7 //填充
}).toString();
})
}
return result;
};
let arr1= {
"password":custPwd, //向后端传的密码
}
const user1 = this.encryption({
data: arr1,
type: 'Aes',
param: ['password'],
key:"1234567887654321" //前后端须保持一致的key值,即密钥
})
postData.password =user1.password
this.axiosIcsmsClientLogin(postData)