SAFT 仕様を使用して交通ガイドを通信する政府サービスにアクセスしようとしていますが、500 の内部エラーが発生し続けます。
送信している XML は既に検証済みで、フォーラムで見つけたさまざまな XML を試してみましたが、正しいものもあれば、より具体的なエラーが発生しているものもありますが、何らかの理由で 500 の内部エラーが発生し続けます。そのため、nodejs の https モジュールを使用したサービスの呼び出しに何か問題があると思います。私はこのようにします:
request.log.setActionStart(request.requestID, "FINPT-WEBSERVICE", "webservice");
var options = {
hostname: "servicos.portaldasfinancas.gov.pt",
port: 701,
path: "/sgdtws/documentosTransporte",
method: "POST",
pfx: fs.readFileSync('keys/TesteWebService.pfx'),
cert: fs.readFileSync('keys/ChavePublicaAT.cer'),
passphrase: "TESTEwebservice",
agent: false,
rejectUnauthorized: false,
secureProtocol: 'SSLv3_method',
headers: {
"Content-Type": "text/xml;charset=UTF-8",
"SOAPAction": "https://servicos.portaldasfinancas.gov.pt:701/sgdtws/documentosTransporte/",
}
};
//options.agent = new https.Agent(options);
var reqFinWebs = https.request(options, function(resFinWebs) {
console.log(resFinWebs.statusCode);
if(resFinWebs.statusCode==200){
//....
});
reqFinWebs.end(soapXML);
console.log(soapXML);
私はそれが漠然としていることを知っています、私が続けなければならないのはこれだけです:
それはPTにあり、プログラミングポルトガルコミュニティフォーラムにあるものであり、nodejsでこれを開発している人を見つけることができません。
また、証明書や公開鍵ではありません。これは特定のエラーであり、パスを移動します。
内部または同様の状況にある人はいますか? 助言がありますか?
エラー:
500
500 '<?xml version=\'1.0\' ?>\n<env:Envelope xmlns:env=\'http://schemas.xmlsoap.org/soap/envelope/\'>\n<env:Body>\n<env:Fault>\n<faultcode>env:Client</faultcode>\n<faultstring>InternalError</faultstring>\n</env:Fault>\n</env:Body>\n</env:Envelope>\n'
<?xml version='1.0' ?>
<env:Envelope xmlns:env='http://schemas.xmlsoap.org/soap/envelope/'>
<env:Body>
<env:Fault>
<faultcode>env:Client</faultcode>
<faultstring>Internal Error</faultstring>
</env:Fault>
</env:Body>
</env:Envelope>
どんな助けでも大歓迎です、私は壁にぶつかりました...