将自签名证书添加到Netsuite https模块以访问第三方Web服务

问题描述 投票:2回答:1

没有人知道如何使用Netsuite https模块将自签名证书文件(.pem或.pfx扩展名)附加到外部Web服务来创建请求吗?

我想使用地图/归类脚本将发票自动报告给西班牙税务注册实体(SII)。我已使用POSTMAN和CURL命令行将生成的XML测试到SII Web界面中,并且Web服务收到了我的请求并返回了预期的XML响应。但是我无法使用N / https模块创建请求而获得相同的结果,这主要是因为我不知道如何随附有证书文件一起发送该请求。我的脚本失败,并显示一条消息:

“类型”: “error.SuiteScriptError”, “名称”: “SSS_CONNECTION_TIME_OUT”

这是我尝试过的代码:

var siiURL = 'https://www7.aeat.es/wlpl/SSII-FACT/ws/fe/SiiFactFEV1SOAP';

//get the content of the generated xml
var xml_content = getXMLContent(url);

//get the url of the certificate file that is saved in the NS file cabinet
var certificate = getClientCertificate();
log.audit({ title: 'Certificate File', details: certificate });
var headers = {
    'Content-Type': 'text/xml; charset=utf-8',
    'SOAPAction': 'SuministroLRFacturasEmitidas',
    'local_cert': certificate,
    'passphrase': '****'
};
var SIIresponse = https.post({ url: siiURL, body: xml_content, headers: headers });
log.audit({title: 'Response from SII', details: SIIresponse.code + ' | ' + SIIresponse.body });

示例片段摘自PHP中的帖子:https://es.stackoverflow.com/questions/77233/conectar-con-el-web-service-de-sii-aeat-soap-php

西班牙税务报告实体提供了一个pfx文件进行身份验证。出于测试目的,我使用以下帖子创建了一个PEM文件(cl和key以及捆绑的.pem文件):https://es.stackoverflow.com/a/131407/59793

我想Web服务在请求的标题中不希望证书文件,但是我不知道应将其放置在何处或是否有合适的标题密钥。另外,我发现了有关如何将.cert / .pem文件保存到Netsuite的信息,但据我所知,这是针对套件商务的。

https://noblue.co.uk/blog/netsuite-tips-installing-an-ssl-certificate-on-suitecommerce

感谢您的帮助或评论。

PD。请原谅任何语法错误或错别字。

有人知道如何使用Netsuite https模块将自签名证书文件(.pem或.pfx扩展名)附加到外部Web服务来创建请求吗?我想将发票报告给西班牙...

ssl netsuite suitescript2.0
1个回答
0
投票

您可以尝试使用N/https/clientCertificate模块:

© www.soinside.com 2019 - 2024. All rights reserved.