情報アイランド

「情報を制する者は世界を制す」をモットーに様々な情報を提供することを目指すブログです。現在はプログラミング関連情報が多めですが、投資関連情報も取り扱っていきたいです。

Node.jsでURLを表すオブジェクトをURLに変換する

2016/08/05

URLを表すオブジェクトをURLに変換するにはurl.format関数を使用します。

var url = require('url');

var u = url.format({
    protocol: 'aaa', 
    slashes: true, 
    host: 'bbb', 
    auth: 'ccc', 
    pathname: 'ddd', 
    query: { query: 'eee' }, 
    hash: 'fff'
});

第1引数にURLを表すオブジェクトを指定します。

このオブジェクトには下のようなプロパティを含めます。

  • protocol・・・プロトコル部分です。
  • slashes・・・プロトコル部分の:の後に/があるかです。
  • host・・・ホスト部分です。
  • auth・・・認証情報部分です。
  • hostname・・・ホスト部分のホスト名です。hostが指定されていない場合にのみ使用されます。
  • port・・・ホスト部分のポート番号です。hostが指定されていない場合にのみ使用されます。
  • pathname・・・パス部分です。
  • search・・・クエリ文字列部分です。
  • query・・・クエリ文字列部分のパラメータです。クエリ文字列のキーをプロパティ名とし、値をプロパティの値とするオブジェクトを指定します。クエリ文字列に同一のキーが複数存在する場合にはプロパティの値はそれらの値を全て含む配列とします。searchが指定されていない場合にのみ使用されます。
  • hash・・・フラグメント部分です。

返り値としてURLが得られます。

サンプルコード1

url-format.js

var url = require('url');

console.log(url.format({
    protocol: 'http:', 
    slashes: true, 
    host: 'host.co.jp:3000', 
    auth: 'user:pass', 
    pathname: '/p/a/t/h', 
    query: { query: 'string' }, 
    hash: '#hash'
}));

実行結果

C:\work\node>node url-format.js
http://user:pass@host.co.jp:3000/p/a/t/h?query=string#hash

関連

pizyumi
プログラミング歴19年のベテランプログラマー。業務システム全般何でも作れます。現在はWeb系の技術を勉強中。
スポンサーリンク

-Node.js