使用Ogone Direct Paiment在webapp上工作时,适用于旧帐户的代码可以正常工作,但是新帐户却出现相同的错误。
我已经添加了调用和答案,也许有人习惯了Ogone API。
该错误似乎告诉我我必须进行SSL 128位调用,但是我不知道该怎么做。我已经尝试了很多事情,包括userAgent
,自己使用openssl
命令生成证书,但没有结果。
request
进行SSL 128位调用?请求通话
const request= require('request');
const datas = {
url : 'https://secure.ogone.com/ncol/prod/orderdirect_utf8.asp',
method:"POST",
form: 'queryUrlEncoded',
headers: {
'Content-Type': 'application/x-www-form-urlencoded'
}
};
request(datas, (err, response, body) => {
err && console.error(err);
body && console.log(body);
});
已收到回复
<?xml version="1.0"?>
<ncresponse [...] NCSTATUS="5" NCERROR="50001115" NCERRORPLUS="SSL 128 required">
</ncresponse>
答案 0 :(得分:1)
您正在使用的模块具有应用SSL的功能,但是为此,您将需要带有密钥的证书,长话短说,是的,这是可能的。
const fs = require('fs')
, path = require('path')
, certFile = path.resolve(__dirname, 'ssl/client.crt')
, keyFile = path.resolve(__dirname, 'ssl/client.key')
, caFile = path.resolve(__dirname, 'ssl/ca.cert.pem')
, request = require('request');
const options = {
url: 'https://api.some-server.com/',
cert: fs.readFileSync(certFile),
key: fs.readFileSync(keyFile),
passphrase: 'password',
ca: fs.readFileSync(caFile)
};
request.get(options);
从文档中复制。