【发布时间】:2017-11-13 17:11:00
【问题描述】:
我正在做一个测试,我需要在本地运行一个服务。该服务是一个公开了 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
谢谢
【问题讨论】:
-
此代码是否在存在所述 localhost 服务的同一台服务器上运行?网址看起来不错。
-
确实是 :) 我还应该澄清一下我是从 ExUnit 测试中运行它
-
您的 Elixir 代码看起来不错。
econnrefused表示您的 rails 服务器没有启动。如果需要,请使用curl命令仔细检查您的 Rails 服务器。 -
好的,我会沿着这条路走。谢谢
-
好的,我可以通过 curl 访问我的服务器。不知道我是高兴还是难过:)