http://intridea.github.io/grape/docs/index.html
の通りに書くとエラー起こしたので覚書。
grapeの使い方というよりは導入の仕方。詳しくはドキュメントかGithubのREADMEを読んでください。
結局GithubのREADMEで解決した。
#grape
grapeを使うと、簡単にWebAPIを作ることができます。
#インストール
gem install grape
or
Gemfileに
gem 'grape'
を書いて bundle install してください
#本体
公式ページで書かれているものの簡易版
注意
ディレクトリやファイルの名前が違うと、
uninitialized constant Piyo (NameError)
になります
autoloadの命名規約に従ってるはず。
module Piyo
class API < Grape::API
format :json
resource :api do
desc "Return piyo."
get :piyo do
"piyo" #とりあえずテキトーなものを返す
end
desc "twice echo."
params do
requires :str, type: String, desc: "twice str"
end
get :twice do
params[:str] * 2
end
end
end
end
#Railsへの設定
module Test
class Application < Rails::Aplication
config.paths.add File.join('app', 'api'), glob: File.join('**', '*.rb')
config.autoload_paths += Dir[Rails.root.join('app', 'api', '*')]
end
end
Rails.application.routes.draw do
mount Piyo::API => '/'
end
#curlから呼んでみる
curl http://localhost:3000/api/piyo
piyo
curl http://localhost:3000/api/twice?str=hello
hellohello
#参考にしたサイト
-H Content-Type:application/json -v https://github.com/intridea/grape
File: README — Documentation by YARD 0.8.3 http://intridea.github.io/grape/docs/index.html