「WEBを支える技術」読書メモ 第2部-① URIの仕様について

概要

この記事は、今後の自分のために技術書を読んでアウトプットすることに重きをおいて書いている。筆者自身が重要だと思ったことを記事に書いていくので、この記事を見た人にとっても有益となれるとよい。

 

 目次

 

URI(Uniform Resouce Identifer)とは

リソースを統一的に識別するID。URIさえあれば、すべてのリソースに簡単にアクセスできる

URIを構成するパーツ

URIhttp://blog.example.jp/entries/1

  • URIスキーム : http
  • ホスト名 : blog.example.jp
  • パス : /entries/1

◯ 複雑なURIの構成

URIhttp://yuhei:pass@blog.example.jp:8000/search?q=test&debug=true#n10

  • URIスキーム : http
  • ユーザ情報 : yuhei:pass
  • ホスト名 : blog.example.jp
  • ポート番号  :8000
  • パス : /search
  • クエリパラメーター : q=test&debug=true
  • URIフラグメント : #n10

◯ 絶対URIと相対URI

絶対URI

http://blog.example.jp/foo/bar

相対URI

/foo/bar

 

URIと文字

URIで使用できる文字

  • アルファベット : A-Za-z
  • 数字 : 0-9
  • 記号 : -.~:@!$&'()

 URIで使用できる文字は、いわゆるASCII文字(Ameirican Standard Code for Information Interchange)である。そのためURIには日本語を入れることはできない。

◯ %エンコーディング

 日本語などASCII文字以外の文字をURIに入れるときは、%エンコーディング(URIエンコーディング)という方式を用いる。

URIの長さ制限

 使用上、制限は無いが、Internet Explorerはバージョンを問わず2038というせいげんがあり、この長さに合わせて実装することが多くなる。

 

URIの実装で気をつけること

 クライアントで相対URIを解決するには、面倒な処理が必要になるのでWebサービスやWeb APIを実装する場合はなるべく絶対URIを使ったほうが良い。

 

続きはこちら👇👇👇

papaiya25x.hatenablog.com