1

我正在做一个测试,在这个测试中我需要点击我在本地运行的服务。该服务是一个公开了 JSON api 的 rails 应用程序。它在端口 3000 上运行。当我执行这个 elixir 代码时,我得到一个错误:

json_event = <some valid json built earlier>
my_url = "http://localhost:3000/api/service_call"
response = HTTPoison.post(my_url, json_event)

我得到的错误是:

{:error, %HTTPoison.Error{id: nil, reason: :econnrefused}}

我应该注意,当我执行该代码时,服务日志中没有找到输出。

我的问题是可以指定端口吗?如果可以的话,我是否通过简单地将其构建到 url 中正确地做到了这一点?

我想接下来的问题是我可能会得到这个 :econnrefused 错误的原因是什么?

我什至不确定我在问正确的问题:P

谢谢

4

2 回答 2

2

我们已经在多台机器上看到了这一点。

我们最初是通过使用 ngrok 来解​​决它的。

然后我们发现这条评论表明这是一个 ipv6 问题,按照列出的步骤操作,它对我们有用。https://github.com/scrogson/oauth2/issues/94#issuecomment-308665656

于 2018-08-27T19:38:14.813 回答
0

所以这里的答案分为两部分:

  1. 是的,您可以指定端口,只需将其放入 URL 本身即可。例如,http://localhost:3000/api/service_call

  2. 重新启动修复了我的系统出现的任何问题。我不知道为什么它会有所作为。

于 2017-11-15T12:39:21.853 回答