node.js - 与 HTTPS 微服务通信时,HTTPS 网关 API 无法验证第一个证书
问题描述
我在 node/express 中运行 HTTPS 网关 API,并获得了从 GoDaddy 获得的认证。网关将主机用于证书并在特定端口(不是 443,例如 8080)上运行。
我可以通过各种方式(cURL、Postman、示例客户端)访问 API,它的响应很好。
但是,因为这是一个网关 API,旨在访问我们网络上的其他 API 微服务,所以当我在网关 API 中访问旨在调用微服务的路由时,我收到错误“无法验证第一个证书”。
微服务与网关 API 位于同一主机上,并为 HTTPS 使用相同的证书,但侦听不同的端口。
我可以直接通过 HTTPS 访问微服务,没有问题,只有当我通过网关 API 访问微服务时才会出现此错误。
当我将微服务设为 HTTP 时,HTTPS 网关会从微服务获得成功的响应。
这里的任何启示都会令人惊叹。我对 SSL 证书还是很陌生,我真的很想了解这里的问题。我查看了与此问题类似的 stackoverflow 上的其他帖子,但我遇到的答案并没有给我提供我需要完全理解的上下文。
解决方案
我得到了一个可行的解决方案,我从这篇文章中得到了用户 sch 的解释来感谢:
我按照他对 T 的指示,最终使用 ssl-root-cas 来适当地设置 pem 链。
推荐阅读
- python - 使用 pandas 迭代数据框中的某些元素时填充新行
- macos - Logstash 6.7.0 无法在 macOS Mojave (10.14.4) 上启动并出现错误“错误:权限被拒绝 - 权限被拒绝”
- python - 在 Shopee 电子商务网站上获取产品名称的工作相对 xpath
- selenium - 最新的 chromebrowser V 74 未在新选项卡中打开 URL
- python-3.x - keras v.2.2.4 和 python 3.6.8 中的 fit_generator 不起作用
- javascript - Javascript 使用 ES6 将对象数组转换为仅具有特定键的数组
- php - 命令 exec 和 php shell_exec 有不同的结果
- asp.net - 尝试将字节数组中的文件提供给我在 ASP.NET Core 2 MVC Web 应用程序中的详细信息视图
- python - 给定五个现有向量,如何找到一个新的等距向量?
- javascript - 将信息存储到下一页的表单页面