この前のLTでゴニョゴニョ・・・
初めて社内の勉強会でLT。
x-hackさんで作ったWEB API使ってアプリを作ったのをもとに進めていた途中で・・・
GETとPOSTってどう違うんだっけ
適当にお茶を濁してしまったがこれではいけない。
正直ググったりすればいいのだが、自分で手を動かさないと覚えられない。
そもそもHTTPってなんだっけ?
⇒WEBページを閲覧するため、WEBサーバと通信を行うプロトコル。
⇒HTMLをやりとりするために定められたプロトコル。
⇒WEBサーバとWEBクライアントが通信するための共通のプロトコル。
⇒ステートレス・プロトコル
FTPは状態を持つプロトコル。HTTPは状態を持たないプロトコル。
ホームぺージが表示される流れ(今更)
【HTTPリクエスト】
WEBクライアント→→→→→→WEBサーバ(クライアント側がHTMLを要求する)
【HTTPレスポンス】
WEBクライアント←←←←←←WEBサーバ(サーバ側が要求されたHTMLを返す)
今回はHTTPリクエストについて
この中にGETメソッド、POSTメソッドが含まれる。
レスポンスはおなじみ404とか500とかのやつ。
GETメソッドとPOSTメソッドの違い
【GETメソッド】
・送られる情報はURLの後ろに書かれる。?以降がそう。これをクエリ文字列と呼ぶ。
(例)https://qiita.com/search?q=java
URLに表示される故に、パスワードなど重要な情報を送る際は絶対に使ってはいけない。
・サーバから情報を取得してくる時に使用する。
APIでデータを取得する際に使いますね。
・パラメータの長さに制限がある。つまり、大量のデータは送れない。
・どこからアクセスしても同じ結果が得られる。
【POSTメソッド】
・送られる情報はメッセージ・ボディに書かれる。
故に、URLに表示されないため第三者に情報が見られる可能性が少ない。
(ただし完璧に安全ではなく、解析されたら見られる)
・サーバへ情報を登録する時に使用する(データベースへの格納など)
・パラメータの長さに制限がない。
・アクセスごとに固有の結果が得られる。
参考文献・サイト
・https://qiita.com/Sekky0905/items/dff3d0da059d6f5bfabf
・https://itsakura.com/network-http-get-post
・小森 裕介 (2010/4/10)『「プロになるためのWeb技術入門」 ――なぜ、あなたはWebシステムを開発できないのか』技術評論社
・掌田 津耶乃 (2018/8/25)Node.js超入門[第2版] 秀和システム
最後に
・もっとJS書く。
・環境構築(vagrant)周りの知識も。