お猿がゆく、インターネットの基礎技術復習

最近、いろいろ思うところあって、一から勉強し直し中。
その一環として、インターネットを支える技術について、お猿なりにまとめていく。

950 views

URIの設計

本章では、よいURIとは何なのか?についてを記す。

よいURIとは?

よいURIとは、「シンプルなURI」であること。
よいURI(クールURI)とは、「URIは変わらないべき。変わらないURIがよい」。
※ 昔はURIが変わることがしょっちゅうあったみたい。

URIを変わりにくくするには?

プログラミング言語に依存させない

プログラミング言語に依存したURIを設計すると、変更することが増える。
(例)http://aaa/bbb-bin/test.js

メソッド名やセッションIDを含めない

上記よりも、こちらの方が、依存しやすくなるみたい。
メソッド名を使用してはいけない理由は、「リファクタリング」でメソッド名を変更したときに、URIが変更になってしまうから。
(例:メソッド名)http://aaa/bbb?action=search

セッションIDを使用してはいけない理由は、ログインのたびに変更するため。
(例:セッションid)http://aaa/bbb?sessionid=12345

URIはリソースを表現する「名詞」にする

URIとHTTPメソッドは「名詞」と「動詞」の関係にある。
(例)http://aaa/profile/1234

一回まとめ

  1. プログラミング言語に依存させない
  2. URIにメソッド名を使用しない
  3. セッションIDを含めない
  4. リソースを表現する名詞であること。

※シンプルな方が、もっと良い!!

URIのユーザビリティ

よいURIとは「シンプルなURI」であるとも定義している。
「シンプルなURI」のメリットは、ユーザビリティが向上する。
(例:複雑版)http://aaa.jp/react/LoginReact
(例:シンプル版)http://aaa.jp/login

※ 複雑版だと、大文字小文字があったり、実装依存(react)があったりややこしい。

URIを変更するとき

URIを変更するときは、「リダイレクト」をすること。
「リダイレクト」とは、古いURIを新しURIに転送するHTTPの仕組み。

URIの設計テクニック

拡張子で表現を指定する。

(例:日本語)http://sample/press.ja
(例:英語)http://sample/press.en
割と使ているHPは多いみたい。

マトリクスURI

基本は「/」で階層を表現できる。
複数のパラメータの組み合わせで表現する場合は、マトリクスURIを使用する。
(例)http://sample/lat=35.7;lng=139
※「;」で区切ることで表現できる。パラメータの順番に意味がないときはこちら。
※「,」で区切ることもできる。「,」で区切る場合は、パラメータの順番に意味があるとき。

URIの不透明性

(例:日本語)http://sample/press.ja
(例:英語)http://sample/press.en
(例:フランス語))http://sample/press.fr

上記の時、「フランス語」のリソースが本当にあるのか不明。
このようにリソースを推測できないことを、「URIはクライアントにとって、不透明」である。

URIを強く意識する。

  • URIはリソースの名前である。
  • URIは寿命が長い
  • URIはブラウザかアドレスランに表示する。

Page 5 of 18.

前のページ 次のページ



[添付ファイル]


お問い合わせ

プロフィール

owl

自己紹介

駆け出しエンジニア
だいたいweb系をかじってる
最近ちょとブロックチェーンに興味出てきた

サイト/ブログ

https://github.com/owl0109

ツイッター

@kijiken1