HTTPoison请求在特定计算机上失败,但可在另一台计算机上工作

时间:2020-05-15 11:28:57

标签: http elixir phoenix-framework httpoison

我正在使用HTTPoison进行发布,在一台机器上一切正常,但在另一台机器上使用相同的代码,但环境参数相似。

HTTPoison.post!("https://remote_api", "", [{"X-TOKEN", System.get_env("API_TOKEN"}, {"Content-Type", "application/json"}])

失败

** (HTTPoison.Error) {:options, {:sslv3, {:versions, [:"tlsv1.2", :"tlsv1.1", :tlsv1, :sslv3]}}}
    (httpoison) lib/httpoison.ex:128: HTTPoison.request!/5

两台机器都设置了相同的运行centos7,但是我在一台机器上获得了预期的结果,而在另一台机器上却没有得到预期的结果。不确定我做错了什么

由于Aleksei Matiushkin的缘故,降级到OTP 22可以解决此问题。

3 个答案:

答案 0 :(得分:1)

我遇到了同样的问题,哈克尼的this fix似乎可以解决问题。它已合并到master,但尚未发布。

与此同时,降级到OTP 22是一个很好的解决方案。

答案 1 :(得分:1)

这暂时对我有用:

{:hackney, git: "https://github.com/benoitc/hackney.git", branch: "master", override: true}

答案 2 :(得分:0)

hackney升级到1.16版本对我来说很有效。

 defp deps do
    [
      ...
      {:httpoison, "~> 1.6"},
      {:hackney, "~> 1.16"}
    ]
  end