2

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);

私はそれが漠然としていることを知っています、私が続けなければならないのはこれだけです:

http://info.portaldasfinancas.gov.pt/NR/rdonlyres/3B4FECDB-2380-45D7-9019-ABCA80A7E99E/0/Comunicacao_Dados_Documentos_Transporte.pdf

それは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>

どんな助けでも大歓迎です、私は壁にぶつかりました...

4

1 に答える 1