【发布时间】:2021-11-02 03:42:59
【问题描述】:
vue版本是vue3。 axios 版本为 0.24.0。 当我使用此方法启用 HTTPS 时,它注意到我的证书无效。
const axios = require('axios')
const fs = require('fs')
const https = require('https')
import { Notify } from 'quasar';
const httpsAgent = new https.Agent({
ca: fs.readFileSync('xxx.pem')
})
axios.get('https://example.com:9500/xxx', { httpsAgent });
证书是 PKCS8 中的自签名证书。 错误信息是
Failed to load resource: net::ERR_CERT_AUTHORITY_INVALID
我确定证书是服务器根 CA。但似乎在我的代码中不起作用。 我不知道我的代码或证书有什么问题。也许需要 pkcs12 证书?谁能回答我。非常感谢。
【问题讨论】:
-
看起来你把东西混在一起了。您显示的是服务器端代码,错误是客户端。
-
代码和错误都是客户端。服务端是nginx,客户端是electron中的Vue。有问题的代码是 Vue 代码。 @EstusFlask
-
见stackoverflow.com/help/how-to-ask。没有人建议您使用 Electron。您发布的代码是 Electron 应用程序的 Node.js 部分,它不会导致此错误,因为这是浏览器错误(浏览器 API 中没有
fs等)。该错误是由 Electron 应用程序的浏览器部分引起的,未显示。问题不是 Vue 本身,因为 Vue 不关心你如何处理请求,你可以用普通的 Axios 重现它或获取代码。请提供可以重现问题的stackoverflow.com/help/mcve