サトリク
HTTPリクエストメソッドについての問題です。
対象のリソースの置き換えを要求するリクエストメソッドとして、正しいものを選びなさい。
A.GET
B.PUT
C.POST
D.DELETE
E.HEAD
なんとなくだけど、C?
オコジョ
サトリク
違います。答えはBの「PUT」です。
上記の問題に即答できなかった方は、この記事でリクエストメソッドについてマスターしましょう。
(この記事は、勉強のアウトプットとして執筆しています。筆者がプログラミング初心者ゆえ、致命的な誤りなどありましたらご指摘いただければ幸いです。)
HTTPリクエストメソッドとは?
HTTPリクエストメソッドとは、簡単に言うと、WebブラウザからWebサーバに対しての命令(リクエスト)です。
Webブラウザは、Webサーバから情報をもらって画面に出力しています。
図解するとこんな感じです。
これはGETの例です。
①ユーザーがWebブラウザで検索
②ブラウザがWebサーバに命令(リクエスト)
③WebサーバがWebブラウザにアクション
④ユーザの元に画面が表示される
主なリクエストメソッド
サトリク
主なHTTPリクエストメソッドを表にまとめてみました。
リクエストメソッド | 説明 | お願い | 重要度 |
---|---|---|---|
GET | リソースの要求 | ページの情報ちょうだい | ◎ |
POST | リソースの送信 | このデータどうぞ | ◎ |
PUT | リソースの更新(置き換え) | 新しいファイルどうぞ | ◎ |
DELETE | リソースの削除 | このページ削除してちょうだい | ◎ |
HEAD | リソース(ヘッダだけ)の要求 | ヘッダ情報だけちょうだい | ◯ |
OPTIONS | サーバの調査 | オプションの情報見して | ◯ |
CONNECT | トンネルを開く | プロキシ通してちょうだい | ◯ |
TRACE | ネットワーク経路の調査 | どういう経路で届いたか教えて | ◯ |
他にも、PATCH、LINK、UNLINKがありますが、ここでは割愛
このように、HTTPリクエストメソッドはたくさんありますが、GET、POST、PUT、DELETEを覚えるだけでもいいかもしれません。他はそれほど使用頻度が多くないので。
リクエストメソッド:GET
初めて見るWebサイトを表示するときにGETが行われています。
しかし、GETが行われないことがあります。それが、キャッシュです。
キャッシュとは、Webブラウザが毎回サーバから取ってくるのが面倒なので、キャッシュという箱に入れておいて、そこから持ってくるというイメージです。
Webサイト上で、Ctrl+r
をすると、キャッシュにある情報から取ってきますが、Ctrl+Shift+R
を行うと、Webサーバから情報を取ってくることができます。
リクエストメソッド:POST
POSTは、データをWebサーバに提供します。
例えば、何かのサイトの会員情報を登録するとき、POSTが行われます。
会員情報を入力して、会員情報を確定するを押した瞬間にPOSTが行われ、Webサーバに会員情報が渡されます。
サトリク
実際のリクエストは、このような形で届いています。
POST /hoge/ HTTP/1.1
Host: localhost:8080
Connection: keep-alive
Content-Length: 22
Cache-Control: max-age=0
Origin: http://localhost:8080
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.98 Safari/537.36
Content-Type: application/x-www-form-urlencoded
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Referer: http://localhost:8080/hoge/
Accept-Encoding: gzip, deflate, br
Accept-Language: ja,en-US;q=0.8,en;q=0.6
name=hoge&comment=hoge
HTTPリクエストメソッド:PUT
PUTは、リソースの更新をします。
例えば、記事を投稿したり、編集して更新したりすると、PUTが行われます。
HTTPリクエストメソッド:DELETE
これは単純で、データを削除するときにDELETEをします。
再問題
では、もう一度先ほどの問題を答えてみましょう。
対象のリソースの置き換えを要求するリクエストメソッドとして、正しいものを選びなさい。
A.GET
B.PUT
C.POST
D.DELETE
E.HEAD
対象のリソースの置き換えを要求ってことは、つまり、リソースの更新!更新ってことは、PUTのことだね。
だから答えは、B
オコジョ
サトリク
正解!
まとめ
サトリク
HTTPリクエストメソッドとはどういうことですか?
WebブラウザがWebサーバGETとかPOSTのこと!
オコジョ
サトリク
GETとPOSTって何ですか?
GETはページの情報をサーバから取得することで、POSTは、サーバにデータを提供すること。
オコジョ
他の問題を解いてみる
まだ、記事はありません。
オススメの参考書
HTTPリクエストメソッドがわからない人に
URLを送りつけてあげよう