LoginSignup
0
1

GET/POSTとは?

Posted at

背景

GETとPOSTの違いが正しく理解できていなかったので、情報を整理するためにこの記事を書きました。

GET/POSTとは

Webサイトの閲覧をしたり、Webアプリケーションを使ったりする際にWebサイトが置かれているサーバとの間では、毎回リクエスト(要求)とレスポンス(応答)が行われています。

リクエストを行う具体的な方法

1. ブラウザのアドレス欄にURLを直接入力する。
2. お気に入り(ブックマーク)からアクセスする。
3. ページ内のリンクやボタン、画像などをクリックする。
4. 入力フォームに情報を入力して送信ボタンをクリックする。
5. JavaScriptなどからバックグラウンドアクセスする

このような方法があります。

サーバはこう言ったリクエストを受け取って
データ取得など適切な処理を行い該当のページを出力することで、皆さんのパソコンやスマートフォンのブラウザ上にページが表示されるような流れになっています。

このリスクエスト(要求)を行う際に、サーバーに対して「何らかのデータ」を渡したい場合があります。

リクエスト(要求)を行う際にサーバーに渡したいデータ

WebリクエストにおけるGETとPOSTの違い
GETとPOSTとは?
ウェブサイトやウェブアプリケーションとのやり取りでは、デバイスとサーバー間でリクエストとレスポンスが行われます。これには次のような方法があります:

URLを直接ブラウザのアドレスバーに入力する。
ブックマークからアクセスする。
ページ内のリンク、ボタン、画像などをクリックする。
入力フォームから情報を送信し、送信ボタンをクリックする。
JavaScriptなどのスクリプトによるバックグラウンドアクセス。
サーバーはこれらのリクエストを受け取り、適切に処理して対応するページを出力します。

リクエストでデータを渡す
リクエスト時には、サーバーにデータを渡す必要があります。このデータには次のようなものがあります:

表示したい商品や動画のID。
ナビゲーションのためのページ番号。
ログインのためのメールアドレスやパスワード。
名前や住所などの個人情報。
このデータは「リクエストパラメータ」と呼ばれます。

GETメソッド:
GETはURLの末尾にパラメータを付加して送信します。
例:example.com/search?id=10&type=12
パラメータはURLに「?」で始まり、それぞれのパラメータは「&」で区切られます。
URLにパラメータが表示され、長大なデータを送信することはできません。

POSTメソッド:
POSTはURLにパラメータを付加せずにサーバーに送信します。
ログインフォームやデータ送信フォームなど、データの送信が必要な場合に使用されます。
例:HTMLフォームの使用

index.html
<form method="POST" action="http://example.com/article">
    <div><label>タイトル:<input type="text" id="title" name="title"></label></div>
    <div><label>著者:<input type="text" id="author" name="author"></label></div>
    <input type="submit" name="submit" value="検索">
</form>

送信するデータはURLに表示されず、フォームフィールドを通じて送信されます。

要約:
GETはページの表示に必要なパラメータに使用されます。
POSTはユーザーが入力するデータの送信に使用されます。
例外として、頻繁なページの遷移やブックマークの場合があります。

結論:
ウェブアプリケーションを開発する際には、各ページの要件に応じて適切なリクエストメソッドを選択してください。

0
1
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
1