LoginSignup
8
8

More than 5 years have passed since last update.

RESTfulAPIとは何か

Posted at

RESTfulAPIとは(RESTのうちAPI設計時の制約)に従って記述すしたAPI
参)http://e-words.jp/w/REST.html

一言で言えば、WebAPIを設計する際のお作法のひとつ。

詳しくは以下の本で調べた。
~~~~~~~~~~~~~~~~~~~~~~~
Web API Design
WebAPIのベストプラクティス
by apigee
~~~~~~~~~~~~~~~~~~~~~~~
RESTfulAPIを深く考えすぎないで、RESTfulAPIの設計方法の具体例を示す。
「APIを作る時にRESTの原理主義よりも開発者がいかに開発しやすいかが重要」というのが前提。

この本の内容はブログにまとめられている。
参)http://d.hatena.ne.jp/winplus/20120701/1341108824
このブログの簡単なメモ

◎URL
リソースごとに、2つのベースURLをつかう
ベースURLから動詞をとりのぞく
HTTPの動詞をつかって、コレクションと要素とを操作する
名詞は複数形
名詞は抽象的にしすぎない
ベースURLが複雑になる場合はクエリパラメタを使う
バージョンをURLに入れる

例) GET /v2.0/dogs/1234?color=red&state=running

◎ステータスコード
APIの使用プログラムに優しい設計にするためにステータスコードはしっかり記述する。
ステータスコードはOK,NG(サーバ起因)、NG(クライアント起因)のどれかが主。
これ以外は以下のステータスを使えば大体おk。
201 - Created
304 - Not Modified
404 - Not Found
401 - Unauthorized
403 - Forbidden
また、APIの使用プログラムを開発する開発者の為にも、エラーメッセージをつけてやるといい。

◎レスポンス
複数の形式をサポートする。xml,json,..
リソースを返却しない場合のみ動詞を使う
例) /convert?from=EUR&to=CNY&amount=100

8
8
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
8