Node.js v0.11.11 マニュアル & ドキュメンテーション
Table of Contents
URL#
Stability: 3 - Stable
このモジュールはURLの解決や解析の為のユーティリティを持ちます。
利用するには require('url') を呼び出してください。
解析されたURLオブジェクトは、URL文字列の中に存在するかどうかに応じて 次に示すフィールドをいくつかもしくは全てを持ちます。 URL文字列に含まれないフィールドは解析結果のオブジェクトに含まれません。 次のURLで例を示します。
'http://user:pass@host.com:8080/p/a/t/h?query=string#hash'
href: 解析する前の完全な URL。protocol と host はどちらも小文字化されます。例:
'http://user:pass@host.com:8080/p/a/t/h?query=string#hash'protocol: リクエストのプロトコル。小文字化されます。例:
'http:'host: URL の完全で小文字化されたホスト情報。ポート番号を含みます。例:
'host.com:8080'auth: URL の認証情報。例:
'user:pass'hostname: ホスト情報の中の小文字化されたホスト名。例:
'host.com'port: ホスト情報の中のポート番号。例:
'8080'pathname: URL のパス部分。ホスト情報からクエリまでの間に位置し、 最初にスラッシュが存在する場合はそれも含みます。例:
'/p/a/t/h'search: URL のクエリ文字列。先頭の ? マークも含みます。例:
'?query=string'path:pathnameとsearchを連結した文字列。例:
'/p/a/t/h?query=string'query: クエリの変数部分の文字列、もしくはクエリ文字列を解析した オブジェクト。例:
'query=string'or{'query':'string'}hash: URL の # マークを含む部分。例:
'#hash'
以下のメソッドはURLモジュールにより提供されます:
url.parse(urlStr, [parseQueryString], [slashesDenoteHost])#
URL文字列を引数に取り、解析結果のオブジェクトを返します。
querystring モジュールを使ってクエリ文字列も解析したい場合は、
第 2 引数に true を渡してください。
デフォルトは false です。
//foo/bar を { pathname: '//foo/bar' } ではなく
{ host: 'foo', pathname: '/bar' } としたい場合は、
第 3 引数に true を渡してください。
デフォルトは false です。
url.format(urlObj)#
URL オブジェクトを引数に取り、フォーマットした URL 文字列を返します。
hrefは無視されます。protocolの末尾に:(コロン) があってもなくても同じように扱われます。http、https、ftp、gopher、fileは末尾に://(コロン、スラッシュ、スラッシュ) が付けられます。mailto、xmpp、aim、sftp、fooなど、その他のプロトコルは末尾に:(コロン) が付けられます。
authが与えられると使われます。hostnameはhostが与えられなかった場合だけ使われます。portはhostが与えられなかった場合だけ使われます。hostはhostname、portの位置で使われます。pathnameの先頭に/(スラッシュ) があってもなくても同じように扱われます。searchはqueryの位置で使われます。query(文字列ではなくオブジェクトです;querystringを参照してください) はsearchが与えられなかった場合だけ使われます。searchの先頭に?(クエスチョンマーク) があってもなくても同じように扱われます。hashの先頭に#(シャープ, アンカー) があってもなくても同じように扱われます。
url.resolve(from, to)#
ベースとなる URL と相対 URL を引数に取り、ブラウザがアンカータグに対して行うのと同様に URL を解決します。例:
url.resolve('/one/two/three', 'four') // '/one/two/four'
url.resolve('http://example.com/', '/one') // 'http://example.com/one'
url.resolve('http://example.com/one', '/two') // 'http://example.com/two'