Elixir Hackney无法向服务器发出请求

Elixir Hackney无法向服务器发出请求,elixir,phoenix-framework,Elixir,Phoenix Framework,我正在使用Phoenix框架运行以下连接。它在过去起过作用,但不确定是什么导致了这起案件的发生。停止并重新启动iex似乎无法修复它。长生不老药1.0.5,凤凰城0.14.0,二郎OTP 18 iex(2)> "https://api.twitch.tv/kraken/videos/top" |> ...(2)> HTTPoison.get!() ** (exit) exited in: :gen_server.call(:hackney_manager, {:new_requ

我正在使用Phoenix框架运行以下连接。它在过去起过作用,但不确定是什么导致了这起案件的发生。停止并重新启动iex似乎无法修复它。长生不老药1.0.5,凤凰城0.14.0,二郎OTP 18

iex(2)> "https://api.twitch.tv/kraken/videos/top" |> 
...(2)> HTTPoison.get!()
** (exit) exited in: :gen_server.call(:hackney_manager, {:new_request, #PID<0.334.0>, #Reference<0.0.2.365>, {:client, :undefined, :hackney_dummy_metrics, :hackney_ssl_transport, 'api.twitch.tv', 443, "api.twitch.tv", [connect_timeout: 5000, recv_timeout: :infinity], nil, nil, nil, true, :hackney_pool, :infinity, false, 5, false, 0, nil, nil, nil, :undefined, :start, nil, :normal, false, false, false, nil, :waiting, nil, 4096, "", [], :undefined, nil, nil, nil, nil, :undefined, nil}}, :infinity)
    ** (EXIT) no process
    (stdlib) gen_server.erl:212: :gen_server.call/3
             src/hackney_client/hackney_manager.erl:65: :hackney_manager.init_request/1
             src/hackney_client/hackney_manager.erl:55: :hackney_manager.new_request/1
             src/hackney_connect/hackney_connect.erl:181: :hackney_connect.socket_from_pool/4
             src/hackney_connect/hackney_connect.erl:41: :hackney_connect.connect/5 
             src/hackney_client/hackney.erl:317: :hackney.request/5
             lib/httpoison.ex:60: HTTPoison.request/5
             lib/httpoison.ex:60: HTTPoison.request!/5
iex(2)>”https://api.twitch.tv/kraken/videos/top" |> 
…(2)>HTTPoison.get!()
**(退出)退出::gen_server.call(:hackney_manager,{:new_request,{:PID,{:Reference,{:client,:undefined,:hackney_dummy_metrics,:hackney_ssl_transport,'api.twitch.tv',443,“api.twitch.tv”,[connect_timeout:5000,recv_timeout::infinity],nil,nil,nil,true,:hackney_pool,:无穷,false,5,false,0,nil,nil,:未定义,:start,nil,:normal,false,false,false,nil,:waiting,nil,4096,“,[],:未定义,nil,nil,nil,nil,:未定义,nil},:无穷)
**(退出)无流程
(stdlib)gen_server.erl:212::gen_server.call/3
src/hackney_client/hackney_manager.erl:65::hackney_manager.init_request/1
src/hackney_client/hackney_manager.erl:55::hackney_manager.new_request/1
src/hackney_connect/hackney_connect.erl:181::hackney_connect.socket_from_pool/4
src/hackney_connect/hackney_connect.erl:41::hackney_connect.connect/5
src/hackney_client/hackney.erl:317::hackney.request/5
lib/httpoison.ex:60:httpoison.request/5
lib/httpoison.ex:60:httpoison.request/5.

您确定已将
:httpoison
添加到您的
mix.exs中的应用程序列表中吗?我也有同样的问题,因为这个原因,我连续几个小时把头撞在墙上:

def application do
  [mod: {MyAwesomeApp, []},
   applications: [:phoenix, :phoenix_html, :cowboy, :logger,
                  :phoenix_ecto, :postgrex, :httpoison]]
end

来源:

您是否在shell中使用
HTTPoison.start/0
启动了
HTTPoison
?是的,这就是问题所在。如果它是应用程序的一部分,请不要在shell中启动。相反,将HTTPoison添加到mix.exs中的应用程序列表中。注意:如果您运行的应用程序低于Elixir 1.3,则只需将
:HTTPoison
显式添加到应用程序列表中。