Day 3:HTTP method, CRUD and SQL
posted at Mar 11, 2019

flow to display web page
- ブラウザでURLにアクセスして、DNSサーバーにIPを問い合わせ、DNSサーバーがIPを返す
- htmlなどの情報をやり取りするためのProtocol Cliantがサーバー上のquery(何を)とHttpメソッド(行いたい処理)をサーバーにHttpリクエストする。
- サーバーがレスポンス
HTTP
- Hypertext Transfer Protocolの略
- HTMLとXMLによるHypertextの送信を主に、その他様々なデータのやり取りができる。
- リクエスト-レスポンス型のプロトコルで、
- webブラウザ「あれが欲しい。これをしてくれ」
- (※あれ=query、これをして=http method)
- webサーバ「OK、はいよ」
HTTPメソッドの内訳とSQLの関係、CRUDとRESTful
# | HTTPメソッド | 内容 | CRUD |MYSql| MySQL|
# |:-:|:-:|:-:|:-:|:-:|
# | GET | リソース取得 | CREATE | 生成| INSERT |
# | POST | リソースデータ追加、小リソース作成 | READ | 読み取り | SELECT |
# | PUT/PATCH | リソース更新作成 | UPDATE | 更新 | UPDATE |
# | DELETE | リソース削除 | DELETE | 削除 | DELETE |
# |:-:|:-:|
# | HEAD | リソースのヘッダ(メタデータ取得) |
# | OPTION | リソースがサポートしているメソッドの取得 |
# | TRACE | プロキシ動作の確保 |
# | CONNECT | プロキシ動作のトンネル接続への変更 |
CRUD
- CREATE, READ, UPDATE, DELETEの4つの単語のイニシャルを並べたもの
- 上4つは、殆ど全てのコンピュータソフトが持つ永続性の基本機能
- (情報の参照。検索。更新。削除)
- ここでいう永続性とは専門的な意味合いなので、wikiだけでも読むと面白い
REST
-
分散ハイパーメディアシステムのためのソフトウェアアーキテクチャのスタイルのひとつ。
-
HTTP規格の主要著者のロイ・フィールディングが2000年に初めて提唱
-
参照: Architectural Styles and the Design of Network-based Software Architectures
-
wikipedia「Representational State Transfer」より
- フィールディングのRESTアーキテクチャスタイルの原則に合わせたWebサービスシステム。
- 遠隔手続き呼出し(RPC)スタイルに合わせた簡易なXML + HTTPインタフェースを採用したシステム