首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Axios返回"net::ERR_CERT_AUTHORITY_INVALID“

Axios返回"net::ERR_CERT_AUTHORITY_INVALID“
EN

Stack Overflow用户
提问于 2021-02-28 02:30:33
回答 1查看 4K关注 0票数 0

目前我有两个系统:

  • 运行Express.js后端和不和谐Bot (自认证SSL)的Vultr服务器
  • 运行我的React的Firebase应用程序。

当前设置应用程序的方式是,react应用程序使用Axios向后端( Express App)发送请求。当我使用axios试图访问我的express应用程序的API端点时,它会返回到控制台中:

Failed to load resource: net::ERR_CERT_AUTHORITY_INVALID

如何解决这个问题,这样我就可以使用Firebase从我的Vultr应用程序中获得信息,而无需获得证书无效的错误?是可能的吗?我可以在我的VPS IP地址上使用HTTP来实现它,同时在Firebase上使用HTTPS吗?我看到了以下内容的流传,但没有奏效:

代码语言:javascript
运行
复制
const instance = axios.create({
    httpsAgent: new https.Agent({ 
      rejectUnauthorized: false
    })
  });
EN

Stack Overflow用户

发布于 2021-02-28 03:06:52

错误消息只是告诉您您的证书不受信任。

你有两个选择:信任还是忽略

盲目地忽略ssl错误是非常糟糕的,使您在中间攻击中很容易被人所取代。证书的工作方式是将其“信任”委托给父证书,直到您到达CA (证书颁发机构)为止。假设你从godaddy那里购买了一个证书,他们会在您的证书上签名,所以当有人试图查看您的证书是否有效时,他们会转到godaddy的CA,获取公钥并检查您的证书是否有效。

如果您自己签署了证书,就没有CA,因此,无法信任它。除非您显式地将它添加到操作系统中的ca包文件中。

自签名证书根本没有证书,并且手动信任它胜过忽略ssl错误。但是,要理解这些概念还需要做一些工作,但随着时间的推移,它会变得更容易。如果你的应用是为了一个爱好,忽略掉。

信任

要在全球范围内信任,您必须获得证书并将其添加到ca信任包中,这需要您访问操作系统和管理权限,这是您的vultr应用程序的casa,而不是firebase。

在firebase的情况下,您必须获取证书公钥并将其作为参数传递给axios

下面是如何实现的

忽略

下面是如何实现的

票数 -2
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66405331

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档