PhoenixFrameworkでは簡単にREST APIを作成することが出来ます。
簡単なやり方ですが、一つ間違えばmix test
で盛大にコケるので、備忘録として書いておきます。
やり方
Phoenixのプロジェクト作成から順にやっていきます。
$ mix phoenix.new test_api
$ mix ecto.create
$ mix phoenix.gen.json Hoge hoge name:string
次にweb/router.ex
を編集しましょう。
router.ex
# Other scopes may use custom stacks.
# ↓のコードはデフォルトでコメントアウトになっているので外しましょう
scope "/api", TestApi do
pipe_through :api
resources "/hoge", HogeController, except: [:new, :edit] # 追加
end
最後にmigrate
をしてからmix test
してみましょう。
$ mix ecto:migrate
$ mix test
これでテストがコケなければOKです。
ここから更に、/api/v1/hoge
などAPIのバージョニングする時は以下の記事が参考になります。
Phoenix でバージョニングした REST API を構築する
(Thanks for WAKASUGI!)