【初心者向け】RESTful APIのリクエストについて
QA・テスターのスキルアップのためにバックエンドの必要そうな知識を残したい・・・っ!
知っておくと何がいいのか
- 不具合報告の具体性が上がる
- 不具合の切り分けを行えるので担当者の切り分けができる
- フロントエンド担当者の負担軽減
- 「わかってる人」感がにじみ出る
- 改善提案の具体性が上がる
フロントエンド・バックエンド
↓の記事に簡単にまとめたので、ご参照ください。
バックエンドって?
データだけ返してくれるリクエストです!
取得するデータはJSONと言われる形式で取得します。
これの美しさ(設計)が非常に大事です。
どこに表示されるの?
ブラウザの開発者モードで確認できます。
Chromeを例にすると、キーボードの「F12」を押すと表示 / 非表示ができます。
さらに、開発者モードの中にある「NetWork」のところに表示されます。
テストで使用するツールPOSTMANなどでも確認することができます。
用語集
JSON
jsonとは
JavaScript Object Notationはデータ記述言語の1つである。軽量なテキストベースのデータ交換用フォーマットでありプログラミング言語を問わず利用できる。名称と構文はJavaScriptにおけるオブジェクトの表記法に由来する。
ソース:wiki
{
"name": "テスト太郎",
"email": "taro@test.co.jp"
}
リクエスト
リクエスト(Httpリクエスト)とは?
HTTPリクエスト(HTTP request)とは、Webコンテンツの伝送を行うHTTP(Hypertext Transfer Protocol)で、クライアントからサーバへ要求を伝えるメッセージのこと。送信してほしいファイルなどを指示する。
ソース:e-words
リクエストの中でも覚えておくとさらにいいこと↓
リクエストメソッド
メソッド(Method)GET
、POST
などリクエストの種類。
これで明示的に何をしたいかが、わかります。
No | 用語 | 説明 |
---|---|---|
1 | GET | データ(以下、リソース)を取得する際に指定するメソッド |
2 | POST | リソースを登録する際に指定するメソッド |
3 | PUT, PATCH | リソースを更新する際に指定するメソッド。PUT とPATCH は同じ扱いをする場合もありますが、PUT=全体更新、PATCHは1部更新って形で使い分けることもあります。 |
4 | DELETE | リソースを削除する際に指定するメソッド。DBから物理(跡形もなく)削除します。 |
パスパラメータ
URL(URI)に単一となる取得条件を含める。
以下の例は、DBに登録されているNo.1のアイテムのデータがいじりたい場合は↓のような形でリクエストし、太字の部分がアイテムIDです。
データの詳細情報の取得しかり、更新・削除の際にも使いますね。
http://localhost:1323/items/1/
クエリパラメータ
URL(URI)に複数のデータを絞り込むための取得条件、「?」の後に記載する
データの一覧を取得する際に使ったります。
http://localhost:1323/items?type=mizu&color=blue
リクエストボディ
データを登録する際などに使用します。
形式はJSONとかいろいろですね。
content-type
「content-type」も大事だけど、のち追加。
レスポンス
レスポンス(Httpレスポンス)とは?
HTTPレスポンス(HTTP response)とは、Webコンテンツの伝送を行うHTTP(Hypertext Transfer Protocol)で、サーバからクライアントから応答を伝えるメッセージのこと。HTTPステータスコードや要求されたファイルの内容などで構成される。
ソース:e-words
あとがき
UIで見えないので、最初は難しいんですよねぇ。
あとは、合わせてDBのことを知っておくとより理解が深まるかもですね。
メソッドは、データベースのCRUDと近いので。
CRUD:「作成(Create)」「読み出し(Read)」「更新(Update)」「削除(Delete)」
Discussion