我创建了一个托管在 AWS EC2 实例上的 R 管道工 API,但是我公司的 Web 开发人员尝试在我的 API 上执行 GET 请求时收到连接错误。我不确定为什么。以下是他们从开发服务器上运行的内容,以尝试获取托管在我的 API 端点上的数据:
curl -X GET http://12.345.678.90:8003/path-to-endpoint
这就是他们收到的...
About to connect() to 12.345.678.90 port 8003 (#0)
Trying 12.345.678.90...
Connection refused
Failed connect to 12.345.678.90:8003; Connection refused
Closing connection 0
. .
如果我只是在本地浏览器或任何浏览器中访问端点,那么它可以工作并显示数据,但由于某种原因,它没有使用 curl 程序进行连接。补充一点,这些相同的 URL 端点正在公司的生产服务器上运行,而不是在他们的开发服务器上运行 - 所以我不确定我的 EC2 实例是否根本不允许访问开发服务器 IP。
如何解决
在 EC2 实例中,我尝试制定自定义 TCP 规则以允许来自任何地方的入站连接。我的实例具有以下入站和出站安全规则:
和
尽管如此,我公司的 Web 开发人员仍然无法连接以从我的端点http://12.345.678.90:8003/path-to-endpoint获取 API 。有什么我没有做的事情允许他们访问 API 吗?
任何解决此问题的帮助将不胜感激!
Edit1:我正在与之合作的开发人员的评论-“如果我使用本地浏览器中的 http URL,那么它可以工作并显示 CSV,但由于某种原因,它没有使用 curl 程序显示。我们在其中添加了 12.345.678.90 IP我们的防火墙也是如此,但仍然没有运气。”
Edit2:这与主题有关,但与问题没有直接关系-我如何允许公共访问/通过 https(而不是 http)对我的端点进行任何访问。即使在我自己的本地浏览器中,我也无法通过 https URL 访问端点?
一如既往的感谢!