Добавьте самоподписанный сертификат в модуль Netsuite https для доступа к сторонним веб-службам. - PullRequest
0 голосов
/ 19 ноября 2018

Кто-нибудь знает, как создать запрос с помощью модуля Netsuite https, присоединяющего файл самозаверяющего сертификата (расширение .pem или .pfx) к внешнему веб-сервису?

Я хочу отчитываться по счетам в Испании Налогрегистрация объекта (SII) автоматически с использованием сценария map / Reduce.Я протестировал сгенерированный XML в веб-интерфейсе SII, используя командную строку POSTMAN и CURL, и веб-служба получила мой запрос и вернула ожидаемый XML-ответ.Но я не могу добиться тех же результатов, создавая запрос с помощью модуля N / https, в основном потому, что не знаю, как отправить этот запрос с приложенным к нему файлом сертификата.Мой сценарий завершается с сообщением:

«тип»: «ошибка. Ошибка сценария», «имя»: «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, и ключ, а также файл .pem комплекта), используя этот пост: https://es.stackoverflow.com/a/131407/59793

Я предполагаю, что веб-служба не ожидает файл сертификата в заголовкезапрос, но я понятия не имею, где он должен быть размещен или есть соответствующий ключ заголовка для этого.Кроме того, я нашел информацию о том, как сохранить файлы .cert / .pem в Netsuite, но, насколько мне известно, это для коммерческих приложений:

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

Спасибо за любую помощь иликомментарий.

ПД.Пожалуйста, извините за любую грамматическую ошибку или опечатку.

...