0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

REST rameworkとは?

Posted at

本記事はRESTfullAPIとはなにかについて説明した記事となっています

※はじめて執筆する記事となるため、拙い文章だったら申し訳ございません(記事というより学生の学習ノート的な見方をしてもらえると助かります)

Restとは

RESTとはwebサービスの設計モデルのことです。
と一言でいうのは簡単ですが、正確に言うならWebシステムを外部から利用するためのプログラムの呼び出し規則です。
例えば、Google.comに接続したら必ず同じような画面が返される、といった同じURLからは常に同じ結果が返されることが期待され、検索バーに内容を入れたらその結果はHTTPメソッド(※後述)を使用し、XMLやHTML、JSONで返され、検索した結果どうだったか(検索した内容が存在していたのか、存在していなかったのか、処理に成功したのか、しなかったのか)がHTTPステータスコード(後述)で通知されるというような原則が含まれることもあります。

#RESTの原則
RESTには基本的な4つの設計原則が存在します。

1,セッションなどの状態管理は行わない(毎回初めましてでやり取りをする)

2, 情報を操作するためのメソッドがあらかじめ定義されている
定義されている主なメソッド例

メソッド 操作
GET 取得
POST 作成(送信)
PUT/PATCH 更新
DELETE 削除

3,すべての情報はURLのような構文で一意に識別される。(データの住所を使って探せるよう)

4,データの内部に次のデータへのリンクを含められる

このような原則が存在することにより
・アクセスの集中に耐えやすい構造にできる
・URI/URLに規則が生まれ開発しやすくなったり
・XMLやJSONを扱う他サービスと連携しやすくなる
・標準的なデータを扱うことにより、様々なアプリケーションを提供できる
などといったメリットが生まれます

ステータスコード

Rest APIでは前述したように検索結果であるXMLやHTML、JSONのほかにHTTPステータスコードというその処理を行った結果成功したか、失敗したか、どうして失敗したかが含まれる値を返します。値に対応する意味は以下のようになっています

ステータス 状態
200 OK(処理成功)
201 Created(リクエストが成功して新しいデータが作られたという状態)
400 Bad Request(送られたデータの形式が違う等のエラーステータス)
401 Unauthorized(ユーザーの認証情報がない時などに返されるステータス)
403 Forbidden(認証されているけど操作に対し権限がない時に返されるステータス
404 Not Found(そのリソース、ページが見つからないときに返されるステータス)
405 Mehod Not Allowed(そのページにはアクセスできるけどPOSTなどの操作を行えないときに返されるステータス)

このようなステータスコードを返却することにより、予想外の動作に対して処理を描きやすくなったり、結果を見たときぱっと見でリクエストの結果が見やすくなったりします。

0
0
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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?