方式与在浏览器中的工作方式相同"/>
使 jsencrypt 在 Node.js 中的工作方式与在浏览器中的工作方式相同
export function encT(e:any) {
const a = new JSEncrypt();
let b = test_secret;
a.setPublicKey(b);
let c = JSON.stringify(e);
const d = a.encrypt(c);
return d;
}
我尝试在 Node.js 中使用 jsencrypt 使用此功能加密数据并将其发送到外部 api。它返回一个错误。但是当我尝试在我的浏览器上使用相同的公钥(测试密钥)使用在线 jsencrypt 进行加密时,它工作得很好。这可能是什么问题和可能的解决方案?
我尝试在导入 JSEncrypt 之前添加这些代码行:
import {JSDOM} from "jsdom";
const dom = new JSDOM(`<!DOCTYPE html><p>Hello world</p>`);
(global as any).window = dom.window;
(global as any).navigator = {appName: 'nodejs'};
但它不起作用。
回答如下:更多推荐
使 jsencrypt 在 Node.js 中的工作方式与在浏览器中的工作方式相同
发布评论