URL は Uniform Resource Locator
(統一リソースロケーター)の略で、インターネット上のリソースの場所を識別するために使用されます。
URL の形式は scheme:[//authority]path[?query][#fragment]
で、authority = [userinfo@]host[:port]
です。
scheme
- プロトコルを指し、例えば http や ftp など。必須ですuserinfo
- 認証用のユーザー情報。username:password 形式で、省略可host
- ホスト。ドメイン名または IP。必須ですport
- ポート番号。省略可で、デフォルトはプロトコルのデフォルトポートを使用path
- パス。主にホストのディレクトリやファイルアドレスを表します。省略可query
- クエリパラメータ。省略可fragment
- フラグメント。ネットワークリソースの一部を指します。省略可単純な URL の例:https://www.codeeeee.com は scheme
と host
を使用し、https
のデフォルトポート 443
を使用しています
URI は Uniform Resource Identifier
(統一リソース識別子)の略で、インターネット上のリソースの名前を識別するために使用されます。URL と URI の形式は同じで、概念的には混同しやすいですが、時々同一視されます。URL と URI の違いは、前者がリソースの場所を表し、後者がリソースの名前を表すことです。URL は URI の一種です。
URL は ASCII
コードの文字のみを含むことができるため、文字セット外の文字が出現した場合はエンコードする必要があります。また、URL にはいくつかの予約文字があり、例えば :
、/
、&
など、これらの文字が出現する場合もエンコードが必要です。これにより URL の解析が混乱するのを防ぎます。
URL エンコード時、文字は対応するパーセントエンコード(%)で表示されます。具体的なエンコードルールはこちらの URL エンコードの紹介を参照してください
Javascript では、encodeURIComponent
と decodeURIComponent
を使用して URL のエンコードとデコードを行います。