【初心者向け】APIを学ぶ前に知っておきたい！Webリクエストの基礎とその役割を解説

# Web通信の基礎：リクエストとレスポンス
前回は、Web技術の基礎となるクライアント、ホスト、リクエスト、レスポンスについて学びました。**今回は、そのリクエストについてさらに詳しく見ていきましょう。**



Webサイトを閲覧する際、ブラウザからサーバーに様々な情報を要求します。この要求のことを**リクエスト**と言います。そして、サーバーから返ってくる情報を**レスポンス**と言います。

## 通信プロトコル：リクエストのルールブック
リクエストを送る際、ただ単に「情報をください」と頼むわけではありません。どのような情報を、どのように要求するか、というルールが定められています。このルールを**通信プロトコル**と言います。

例えば、http://shop.jp/search/itemというＵＲＬのうち、
最初のhttpの部分がプロトコルといいます。

代表的な通信プロトコル

**・HTTP (HyperText Transfer Protocol):**

・Webサイトの表示、APIの利用、ファイルのダウンロードなど、Web上で最も一般的なプロトコルです。

・**８つのメソッド**と呼ばれる機能があり、GET、POST、PUT、DELETEなど、様々なアクションを指定できます。

**・HTTPS (HyperText Transfer Protocol Secure):**

・HTTPの通信内容を**暗号化**したもの。HTTP＋S（**Secure（安全）**）

・オンラインバンキングなど、セキュリティが求められる場面で使用されます。

**・POP (Post Office Protocol):**

・メールを受信するためのプロトコル。

**・FTP (File Transfer Protocol):**

・ファイルを転送するためのプロトコル。



![スクショ１　HTTP系.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3923801/437cc098-ed9a-5b68-f0db-63dde57a7920.png)

代表的なプロトコルのまとめ
このプロトコルのうち、APIとはなにか、API通信についてこれから説明する予定なので、今回はHTTPとHTTPSにおける８つのメソッドについて詳しく説明していきます。

## HTTPメソッド：リクエストの種類
HTTPプロトコルには、メソッドと呼ばれる機能があります。その種類は「GET」・「POST」・「PUT」・「DELETE」・「HEAD」・「CONNECT」・「OPTIONS」・「TRACE」の８つがあります。これらによって、リクエストの種類を指定できます。
　今回は、よく使われる代表的な4つのメソッドを紹介します。

**・GET:**

・データを取得するためのメソッドです。

・例: Webページの表示、特定のデータの検索

URLの末尾にパラメータを追加することで、取得するデータを絞り込むことができます。

**・特徴:**

　　　　・キャッシュ可能

　　　　・冪等性（べきとうせい：同じリクエストを複数回行っても結果は同じという意味）



![スクショ２　GETメソッドについて.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3923801/87365a8d-de6f-8737-e3cb-4d17366b4392.png)

GETメソッドについて



**・POST:**

　・サーバーにデータを送信するためのメソッドです。

　・例: フォームの送信、ファイルのアップロード

　・パラメータはURLではなく、リクエストボディに含めます。

　**・特徴:**

　　　　・キャッシュ不可

　　　　・冪等でない（同じリクエストを複数回行うと、データが重複して登録される可能性がある）



![スクショ３　POSTメソッドについて.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3923801/bce83bb0-4d3c-37d5-6f74-93978dfe7799.png)

POSTメソッドについて




**・PUT:**

　・リソースを更新するためのメソッドです。

　・例: ファイルの更新、データの修正

　**・特徴:**

　　　　・冪等性（べきとうせい：同じリクエストを複数回行っても結果は同じという意味）



![スクショ４　PUTメソッドについて.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3923801/39e2d55a-b7a3-f8b5-cd80-682ef05023ac.png)

PUTメソッドについて



**・DELETE:**

　・リソースを削除するためのメソッドです。

　・例: ファイルの削除、データの削除

　**・特徴:**

　　　　・冪等性（べきとうせい：同じリクエストを複数回行っても結果は同じという意味）



![スクショ５　DELETEメソッドについて.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3923801/1c9856a8-9888-5e59-e14c-6d57af1287c3.png)

DELETEメソッドについて




この中で、APIを学ぶ記事を後に投稿する予定で、**GETとPOSTのメソッドが出てくる頻度がかなり高く**、GETとPOSTについて後に解説する予定なので覚えておいてください。

# まとめ
今回は、Webリクエストの種類と役割について解説しました。特に、HTTPメソッドはAPI開発で頻繁に利用するため、しっかりと理解しておきましょう。

**・リクエスト:** サーバーに情報を要求すること

**・レスポンス:** サーバーから返ってくる情報

**・通信プロトコル:** リクエストのルール

**・HTTPメソッド:** リクエストの種類（GET, POST, PUT, DELETEなど）





# ここでお知らせ！
APIに興味がある初心者の方へ、**基礎から実際のビジネス活用事例まで分かりやすく解説した講座です！**今なら、このページから1か月限定で94％オフクーポンを利用できます。今すぐAPIの知識を深め、ビジネスの幅を広げる一歩を踏み出しましょう。クーポンがなくなる前にお見逃しなく！


**クーポンコードはこちら：NOTEAPI202410**

https://www.udemy.com/course/oshiro_002/?couponCode=NOTEAPI202410

**Udemyは購入後30日以内であれば返金可能**
上記講座はUdemyで受講することができ、Udemyでは受講コースに納得がいかない場合、購入後30日以内であれば返金可能となっています。

購入後に「思っていたものと違う」、「学びにならなかった」と感じた場合は、返金申請を出すことができます。

返金の詳細はUdemy公式ページの**コースの返金方法**をご参照ください。
https://support.udemy.com/hc/ja/articles/229604248-%E3%82%B3%E3%83%BC%E3%82%B9%E3%81%AE%E8%BF%94%E9%87%91%E6%96%B9%E6%B3%95