【发布时间】:2016-10-12 10:17:05
【问题描述】:
我正在尝试通过 SSL 和 node-soap 模块访问 WSDL 方法。我可以连接到服务器并获取client.desclibe(),但是当我尝试访问 WSDL 上的方法时,我得到:
authorized: false,
authorizationError: 'UNABLE_TO_VERIFY_LEAF_SIGNATURE',
我尝试禁用 SSL 验证或使用ssl-root-cas 模块,但每次我收到此错误时它都没有意义。
这就是我使用node-soap的方式:
client = soap.createClient(wsdl_url, {
wsdl_options: {
key: fs.readFileSync('ssl/privatekey.key'),
cert: fs.readFileSync('ssl/public-certificate.crt'),
passphrase: 'password',
rejectUnauthorized: false,
},
forceSoap12Headers: true
},
function(err, client){
client.setSecurity(new soap.ClientSSLSecurity(
'ssl/privatekey.key' ,
'ssl/public-certificate.crt' ,
'ssl/new-ca.crt' ,
{
rejectUnauthorized: false,
passphrase: 'password'
}
));
client.ServerMethod({ name : 'value' }, function(err, result) {
console.log(result);
});
})
任何人有什么问题的建议?我需要启用 SSL,所以我不能将其关闭。
【问题讨论】:
-
你解决了吗?
标签: node.js web-services ssl soap wsdl