首页 > 解决方案 > 将 SSL 认证添加到 Axios 请求

问题描述

我收到以下错误:

Error: write EPROTO 140333960492168:error:10000410:SSL routines:OPENSSL_internal:SSLV3_ALERT_HANDSHAKE_FAILURE:../../third_party/boringssl/src/ssl/tls_record.cc:592:SSL alert number 40 at WriteWrap.onWriteComplete [as oncomplete] (internal/stream_base_commons.js:87:16)

涉及的组件很多,我按照 [this][1] 生成了我所有的证书和密钥,但是 Axios 上的用法正确吗?

const httpsAgent = new https.Agent({
            key: fs.readFileSync(path.join(__dirname,'..','..','..','client1-key.pem')), 
            cert: fs.readFileSync(path.join(__dirname,'..','..','..','client1-crt.pem')),
            ca: fs.readFileSync(path.join(__dirname,'..','..','..','ca-crt.pem')),
            passphrase: "password",
            rejectUnauthorized:true,
            requestCert:true
          });

axios.post('https://IP:PORT/endpoint',{
                data: {
                    data1: data1,
                    data2: data2,
                },
                httpsAgent: httpsAgent
              })

谢谢你的帮助![1]:https ://gist.github.com/pcan/e384fcad2a83e3ce20f9a4c33f4a13ae

标签: sslaxios

解决方案


推荐阅读