Joe*_*Joe 6 javascript https pfx node.js
我正在尝试从文件加载PFX和密码,以便我可以发出HTTPS请求.在我开始之前,我已经知道PFX是好的,这不是问题.
我正在做以下事情:
config.options.pfx = fs.readFileSync('file.pfx');
config.options.passphrase = 'passphrase';
Run Code Online (Sandbox Code Playgroud)
我将我的选择传递给代理人.
config.options.agent = new https.Agent(options);
Run Code Online (Sandbox Code Playgroud)
然后我尝试构建rquest,我收到以下错误:
crypto.js:143
c.context.loadPKCS12(pfx, passphrase);
^
Error: header too long
at Object.exports.createCredentials (crypto.js:143:17)
at Object.exports.connect (tls.js:1334:27)
at Agent.createConnection (https.js:79:14)
at Agent.createSocket (http.js:1293:16)
at Agent.addRequest (http.js:1269:23)
at new ClientRequest (http.js:1416:16)
at Object.exports.request (https.js:123:10)
Run Code Online (Sandbox Code Playgroud)
我从工作存储库中检查了这一点,我知道这适用于它的原始作者.出于某种原因,我的设置没有运行它.
Rei*_*kin 11
我有类似的问题.事实证明我正在使用fs.readFileSync('file.pfx', 'utf8')
,这对于PEM文件是正确的,但由于PKCS12文件是二进制的,你应该直接传入fs.readFileSync('file.pfx')
.