「Webを支える技術」を読んで 〜URI〜
こんにちは。
今日は「URI」の話。
ではガシガシ書いていきます。
URIとは
Uniform Resource Identifier
「リソースを統一的に識別するID」
これがあることによって、web上に存在するリソースを一意(それだけって意味)に示せるってわけ。
住所みたいなもんやね。
まぁ、「URL」と同じですわww
URIの構造
これも以前やりましたね。
けどもう一回おさらい。
・URIスキーム:http
上の場合は、
「httpでアクセスしますよー」
ってこと。
・ホスト名:dirty.jp
ここは必ず一意になる。
・パス:/unko/1
パスは階層を表す。
ホスト内で必ず一意になる。
URIの設計
どうやら「クールなURI」とやらがあるらしい。
URIをかっこよくしてどうすんねん。
ってことで「クールなURI」の定義は、
「変わらないURI」
どういうことかと言うと、昔のURIはコロコロ変わっていたらしい。
「お気に入り」に入れてたwebサイトがある日突然見れなくなるみたいな。
「404 Not Found」とか出たら、たしかに萎えるよね。
そこで、変わらないURIこそが最上のURIということになった。
その最上でクールなポイントがこれ。
・プログラミング言語に依存した拡張子やパスを含まない
「.rb」とか「.php」とか入れちゃダメよ。
「/cgi-bin」もダメ。CGIの時代なんかとっくに終わったんだからぁぁ。
・メソッド名やセッションIDを含めない
例えば、「showPage」というメソッド名がURIに入っていると、リファクタリングしてメソッド名が変わったときにURIも変わっちゃうから。
そしてセッションIDと言えばCookieだけど、ログイン毎にURIが変わっちゃうことはもう想像がつく。(このぼくでもww)
そんなのクールじゃないっ!!
プログラムの外部仕様(入力と出力)を変えずに、内部構造を安全に改善すること。
プログラムを理解しやすくするために、拡張性や再利用性を高めるわけやな。
要は、
「こまめに手入れしてプログラムを長持ちさせよう」
ってこと。
・URIはリソースを表現する名詞にする
ユーザが分かるように何をする場所なのかがわかりやすくしましょう、ってことやね。
ログイン画面なら、dirty.jp/login
編集画面なら、dirty.jp/edit
みたいな。
URIを変更したいとき
でも、どうしてもURI変更しなくちゃいけないときってあるよね。
システム総入れ替えとかハードウェアの老朽化とかで。
そういうときは、「リダイレクト」っていう便利な方法がある。
リダイレクトとは、古いURIを新しいURIに転送するHTTPの仕組みのこと。
今回、その方法は割愛するけど、一応そういうもんがあるって覚えておこう。
よし、今日はここまで。
ではでは、この辺で。