首页 > 解决方案 > 从 .env 导入变量 - Express Cloud 函数 - 显示未定义

问题描述

.env

AES_SECRET= 123

索引.ts

dotenv.config();
const secret = process.env.AES_SECRET;
.
.
const decrypt = (hash: string) => {
 var reb64 = CryptoJS.enc.Hex.parse(hash);
  var bytes = reb64.toString(CryptoJS.enc.Base64);
  var decrypt = AES.decrypt(bytes, secret);
  var plainText = decrypt.toString(CryptoJS.enc.Utf8);

  return plainText
}

错误 - 对象可能是“未定义”。秘密显示为未定义

标签: expressenvironment-variables

解决方案


试试这样:

dotenv.config();
const secret = <string>process.env.AES_SECRET;
.
.
const decrypt = (hash: string) => {
 var reb64 = CryptoJS.enc.Hex.parse(hash);
  var bytes = reb64.toString(CryptoJS.enc.Base64);
  var decrypt;
  
  if (secret !== undefined) {
     decrypt = AES.decrypt(bytes, secret);
  }
  
  var plainText = decrypt.toString(CryptoJS.enc.Utf8);

  return plainText
}


推荐阅读