私は Elixir と Phoenix を学んでおり、Github の API を照会する必要があるサイド プロジェクトを構築しています。
これは呼び出しを実行するモジュールです
defmodule Github do
use HTTPoison.Base
def process_url(url) do
"https://api.github.com/" <> url
end
def process_response_body(body) do
body
|> Poison.decode!
|> Enum.map(fn({k, v}) -> {String.to_atom(k), v} end)
end
end
これは、「/api/github/search」の GET に応答するコントローラーです。
defmodule MyApp.GithubController do
use MyApp.Web, :controller
require Github
def search(conn, _params) do
json conn, search_repositories
end
def search_repositories() do
url = "search/repositories?q=language:javascript&sort=stars&order=desc"
Github.get! url
end
end
Phoenix から上部にエラー ページが表示されます
値をエンコードできません: {:total_count, 2389278}
何かが機能しているので、実際にGithubのAPIを呼び出していますが、何らかの理由でステップがありません。ここの例に従いましたhttps://github.com/edgurgel/httpoison#wrapping-httpoisonbase
ヘルプ/ヒントは大歓迎です!