0
0

GW中に高校生の従弟会ったら、
絶賛プログラミングにハマってるらしいんです

良いことだと思いましたが、
Webアプリ作成がうまくいかないそうで、
話を深堀るとGET/POSTの違いが分かってなさそうだと分かりました。

その場で、口頭で伝えはしましたが、
記事にまとめたほうが分かりやすいと思い、
従弟に向けて書いていきます。

この記事を読んでいる方で
GET/POSTの理解が曖昧な方のお役にも立てれば幸いです😊

GET/POSTの違い&実際の使い分け方

GET/POSTとは?

Webサイトを閲覧したり、Webアプリを使う際に、パソコンとサーバーとの間でリクエスト(要求)とレスポンス(応答)が行われています。

リクエストを行う方法としては、

  • URLの直接入力
  • お気に入りからのアクセス
  • リンクやボタンのクリック
  • 入力フォームからの送信
  • JavaScriptからのバックグラウンドアクセスなどがあります。

サーバーはリクエストを受け取り、適切な処理を行い、該当ページを表示します。

リクエストパラメーターはサーバーに送るデータのことで、GETやPOSTはそのリクエストの方式の一つです。両者の違いは、サーバーへのリクエストパラメーターの送り方にあります。

GET方式とは?

GET方式は、URLの末尾にパラメータを付けて送る方法です。URLの「?」や「&」の後に【パラメータ名】=【データ】の形で指定します。パラメーターを複数渡す場合は、「&」で区切ります。

例えば、下記のzozotownのリンクを見てみましょう。

は「?」以降がパラメータです。

【URL】 https://zozo.jp/shop/gap/goods-sale/81271942/
【パラメータ1】did 【データ】132326088
【パラメータ2】rid 【データ】1203

となります。

この方式は、URL上にパラメーターが表示されるため、個人情報やパスワードの送信には適しません。また、URLには長さの制限があるため、膨大なデータを送ることはできません。

POST方式とは?

POST方式は、パラメータをURLに付けずにサーバーに送る方法です。ログイン画面やお問い合わせフォーム、注文入力画面などで使用されます。HTMLの<form>タグの属性でmethod="POST"と指定します。個人情報やパスワード、膨大なデータを送信する場合は、必ずPOST方式を使用します。

GET/POSTの使い分け方

基本的には以下のように覚えておけばOKです:

  • 画面表示のために必要なパラメーターは「GET」
    • 例)表示したい商品や動画のID、ページ番号など
  • ユーザーが画面に入力して送信するパラメーターは「POST」
    • 例)ログインIDや個人情報など

つまり、名前通りってことです。

GETは、ページを「取得」するためのリクエスト
POSTは、情報を「送信」するためのリクエスト

Webアプリを作る際には、画面によって適切なリクエスト方式を選ぶようにしましょう😊

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