HTTPoisonで handshake failure を食らった


プログラミングElixirの第13章、GitHubにアクセスしてIssue一覧を取得するというのを写経していたら表題の問題にはまりました。https のサイトに接続しようとすると発生するようです。
こちらに従って hackney のバージョンを 1.6.1 に下げることで回避できることを確認したのでご報告します。かしこ

  • { :httpoison, "~> 0.8" }
  • http://api.github.com/repos/elixir-lang/elixir にGetリクエストを投げる
  • 301 Moved Permanently を食らう
  • https://api.github.com/repos/elixir-lang/elixir にGetリクエストを投げ直す
  • おおっと handshake failure!!


iex(9)> Issues.GithubIssues.fetch("elixir-lang", "elixir")
Issues.GithubIssues.fetch("elixir-lang", "elixir")

21:33:55.543 [error] SSL: :certify: tls_connection.erl:688:Fatal error: handshake failure - malformed_handshake_data

** (FunctionClauseError) no function clause matching in Issues.GithubIssues.handle_response/1
   (issues) lib/issues/github_issues.ex:14: Issues.GithubIssues.handle_response({:error, %HTTPoison.Error{id: nil, reason: {:tls_alert, 'handshake failure'}}})
どうやら hackney まわりのなにかが原因らしいのですが、、、無事に hackney バージョンを下げることで回避できました。
@hayabusa333 さんの情報が決め手になりました。

コメント

このブログの人気の投稿

PostgreSQLで多次元配列を1次元配列に展開したい

inotify でファイル監視しようず!

ジャックパーセルのかかとの内側を直した