データの運び方:GETとPOSTの違い
5分49秒 | WEBGETPOST
基本情報技術者試験の頻出テーマを解説した動画コンテンツです。
トランスクリプト(字幕テキスト)
こんにちは。今回の解説へようこそ。ウェブサイトのリンクをクリックしたり、フォームに何か入力して送信ボタンを押したりするとき。 その裏側で一体何が起こっているのか、考えたことありますか?今日はね、そのちょっとした謎を解き明かしていきたいと思います。 Webの世界を支えるGETとPOSTっていう、2つのデータの運び方について一緒に見ていきましょう。 皆さんがウェブサイトをクリックする、その一瞬。実はその裏側、つまり舞台裏では、僕たちの目に見えないデータの旅が始まってるんですよね。 その旅の方法こそが、今日のテーマの、そう、まさに鍵を握ってるんです。 要するに、全てはあなたのデータが、今見ているブラウザからウェブサイトのサーバーまで、どうやって運ばれるかっていう話なんです。 このデータの運び方にはいくつか種類があって、今回はその中でも特に代表的な2つの方法を分かりやすく解説していきますね。 さあ、まず1つ目です。これはGETリクエスト。これはですね、例えるなら見えるハガキみたいなものだって考えてみてください。 GETリクエストっていうのは、特定の情報、まあデータですね、それを「ください」って要求するための方法なんです。 で、ここでの一番大事な特徴は、送りたいデータがURL、つまりあのウェブアドレスに、直接くっついちゃうってことなんです。 そう、まさにハガキを送る感覚とそっくりなんですよ。 宛先がウェブサイトで、伝えたいメッセージは裏に書いてあるから、届くまでの間に誰でも見ることができちゃう。 ちょっと無防備な感じ、しますよね。 ほら見てくださいこれ。GETリクエストが実際にどう見えるか、すごくよく分かりますよね。例えば「Explanation Video」って検索すると、 このアニメーションみたいに、URLの最後に「クエリ=なんとか」っていう文字がゾロゾロってくっついていく。これがデータが丸見えになってるっていう証拠なんです。 というわけで、このハガキ方式、GETの特徴をまとめるとこうなります。データがURLで丸見えだから、送れる量にも限りがあるし、セキュリティもまあ低いですよね。 でもその反面、このページをブックマークしたり、URLを友達に「これ見て」って共有したりするのにはすごく便利なんです。 じゃあ、パスワードとか、他の人に見られたくない大事な情報を送りたい時はどうするんでしょう。そこで登場するのが2つ目の方法、POSTです。 これは秘密の封筒って考えると、すごくしっくりきますよ。 POSTリクエストっていうのは、サーバーにデータを送って、何か新しい情報を作成したり更新したりする時に使われます。 ここで一番重要なのは、データがリクエストボディ、つまり本体の部分にちゃんと隠されて送られるっていうことなんです。 まさに封をしっかりした封筒を送るようなもの。あなたの大切な情報は封筒の中に安全にしまわれていて、外からは全く見えません。 このスライドのアニメーションが、そのイメージを完璧に表してますよね。データが箱の中に入って、カチッと鍵がかかって安全に送られていく。まさにこれです。 この封筒方式の流れはこんな感じです。まずユーザー名とかパスワードみたいなデータを準備します。次にそれをリクエストボディっていう封筒の中に隠す。 そして安全にサーバーへ送る。ね、シンプルでしょ? さて、ここまで見てきたGETとPOST。この2つの違いを、ここで一気に比べてみましょうか。こうやって並べてみると、もう一目瞭然ですよ。 この表を見てください。データの場所はGET、つまりハガキがURLの中なのに対して、POST、封筒はリクエストボディの中。 見え方で言うとGETはもう丸見え。でもPOSTはちゃんと隠されてる。そうなると当然セキュリティはPOSTの方が断然高いし、送れるデータ量もPOSTの方がずっと大きいんです。 理屈はこれくらいにして、じゃあ私たちの普段の生活の中で、この2つが具体的にどう使われているのか、実際の例を見ていきましょう。 GET、つまりハガキが使われるのは、例えばGoogleで何か検索したり、ネットショップで商品のページへのリンクをクリックしたりする時ですね。 一方POST、封筒の出番は、メールにログインしたり、お問い合わせフォームを送ったり、写真をアップロードしたり。こういう個人情報とか、大事なデータを送る時なんです。 さて、最後に。なぜこの違いを知っておくことがそんなに大事なのか、その核心に迫っていきましょう。 この一言が全てをものすごくシンプルに表してくれてます。「GETは何かをもらうため。POSTは何かを変えるため」。これすごく覚えやすいルールじゃないですか? この違いを理解することが何でそんなに重要なのかと言うと、結局あなたのデータがどうやって送られるかっていうことが、あなたのセキュリティとかプライバシーに直接関わってくるからなんですね。 この解説で、もし一つだけ覚えて帰ってもらうとしたらこれです。「GETはハガキ、POSTは封筒」。このシンプルな例えさえ覚えておけば、もう迷うことはないはずです。 最後に一つ、皆さんに質問です。「あなたの個人情報を、あなたはハガキで送りますか?」きっと送りませんよね。この問いの答えこそが、GETとPOSTの違いの全てを物語っているんです。
このコンテンツは Web society で視聴・学習できます。