TypeError handling

TypeError handling

本文关键字:handling TypeError      更新时间:2023-09-26

我使用节点包轻松加密(https://www.npmjs.com/package/easy-encryption)。此包对字符串进行加密和解密。如果解密创建了一个简单的加密字符串,那就好了。但如果解密不正确的字符串,则服务器会删除并返回以下内容:

错误解密示例:

var crypt = new Crypt({
    secret: crypt_config.secret,
    iterations: crypt_config.iterations
});
var result = crypt.decrypt('test');

结果:

crypto.js:122
  this.push(this._handle.update(chunk, encoding));
                         ^
TypeError: Bad input string
    at TypeError (native)
    at Decipher.Cipher._transform (crypto.js:122:26)
    at Decipher.Transform._read (_stream_transform.js:167:10)
    at Decipher.Transform._write (_stream_transform.js:155:12)
    ...

如何使服务器在发生错误时继续工作并处理错误?

如果您想继续执行,请将代码封装在try-catch语句中。

var crypt = new Crypt({
    secret: crypt_config.secret,
    iterations: crypt_config.iterations
});
try{
    var result = crypt.decrypt('test');
}
catch(err){
    alert(err);
}

但是,正如评论所说,你真的传递了正确类型的数据吗?这对你没有多大帮助。