protractor node-libcurl Ошибка: сертификат узла SSL или удаленный ключ SSH не в порядке

Я пытаюсь использовать модуль node-libcurl в своем проекте транспортира, но получаю сообщение об ошибке:

Ошибка: сертификат узла SSL или удаленный ключ SSH не в порядке

const  {curly} = require('node-libcurl')
const { data } = await curly.post('https://www.example.com', {
  postFields: JSON.stringify({"name":"rak"}),
  httpHeader: [
    'Content-Type: application/json',
    'Accept: application/json',
    'Access-Control-Allow-Origin : *'
  ],
})

Как избавиться от этой ошибки.

1 ответ

Из файла COMMON_ISSUES.md в репозитории проекта:

Вам нужно установить либо CAINFO или CAPATH параметры или отключите проверку SSL с помощью SSL_VERIFYPEER (не рекомендуется).

Файл сертификата можно получить несколькими способами:

  • Извлечено прямо из вашей системы / браузера

  • Загружен с https://curl.haxx.se/docs/caextract.html, который основан на версии из Firefox

  • Создание файла с содержимым tls.rootCertificates, который был добавлен в Node.js v12.3.0, например:

    const fs = require('fs')
    const path = require('path')
    const tls = require('tls')
    
    const { curly } = require('node-libcurl')
    
    // important steps
    const certFilePath = path.join(__dirname, 'cert.pem')
    const tlsData = tls.rootCertificates.join('\n')
    fs.writeFileSync(certFilePath, tlsData)
    
    async function run() {
      return curly.post('https://httpbin.org/anything', {
        postFields: JSON.stringify({ a: 'b' }),
        httpHeader: ['Content-type: application/json'],
        caInfo: certFilePath,
        verbose: true,
      })
    }
    
    run()
      .then(({ data, statusCode, headers }) =>
        console.log(
          require('util').inspect(
            {
              data: JSON.parse(data),
              statusCode,
              headers,
            },
            null,
            4,
          ),
        ),
      )
      .catch((error) => console.error(`Something went wrong`, { error }))
    
Другие вопросы по тегам