工具

177 阅读1分钟

请求解析后端json数据

json-server

二次加密

crypto-js

例子:

methods: {
// crypto-js二次加密
    Encrypt(word, keyStr, ivStr) {
      let key = keyStr;
      let iv = ivStr;
      if (keyStr) {
        key = CryptoJS.enc.Utf8.parse(keyStr);
        iv = CryptoJS.enc.Utf8.parse(ivStr);
      }
      let srcs = CryptoJS.enc.Utf8.parse(word);
      var encrypted = CryptoJS.AES.encrypt(srcs, key, {
        iv: iv,
        mode: CryptoJS.mode.CBC,
        padding: CryptoJS.pad.ZeroPadding,
      });
      return CryptoJS.enc.Base64.stringify(encrypted.ciphertext);
    },
    // 点击登录按钮
    signIn() {
      let key = CryptoJS.enc.Utf8.parse("shichaoboshichao");
      let iv = CryptoJS.enc.Utf8.parse("shichaoboshichao");
      // 获取登录权限接口
      this.$api.home
        .getSignIn({
          accountName: this.userName,
          accountPassowrd: this.Encrypt(this.password, key, iv),
        })
        .then((res) => {
          console.log(res);
          if (res.data.code === 200) {
            // localStorage.setItem("token", res.data.result.token);
            Cookies.set("token", res.data.result.token);
            localStorage.setItem("signInSuccess", true); // 保存登陆状态
            this.$router.push("./Main");
          } else {
            localStorage.removeItem("signInSuccess");
          }
        })
        .catch((error) => {
          console.log(error);
        });
    },
}