UNPKG

browserify-adventure-jp

Version:

learn browserify with this educational adventure

43 lines (27 loc) 2.06 kB
browserifyはブラウザコンパチブルのNodeコアモジュールを多数含んでいます。 例えばurl, path, querystring, events, stream, utilなどなど。 このため、ブラウザを意識することなくNode向けに書かれたモジュールもブラウザ上で 動くということです! 今回は `prompt()` はウェブのアドレスを返します。 このアドレスのクエリ文字列をパースし、そのなかの "file" パラメータをウェブアドレス につなげて出力するようにします。 たとえば、次のアドレス: http://substack.net/filez/dogez/img.cgi?file=../hi/doge.gif これを以下のように出力するようにします。 http://substack.net/filez/hi/doge.gif 手製のパーサを使う代わりに、Nodeのコアモジュールが便利なのでそれを使いましょう。 urlモジュールとquerystringモジュールです。 * url.parse(addr) はウェブアドレスの文字列を受け取り、そのURLの全てのコンポーネント をオブジェクトとして返します。そのコンポーネントのうち、"query"プロパティは 必要になるでしょう。 * url.resolve(baseAddr, path) は `path` 文字列を baseAddr URLに対して解決します。 * querystring.parse(str) は クエリ文字列 `str` を受け取り、キーと値にマッピングした オブジェクトを返します。 `require('url')``require('querystring')` を利用するだけでこれらの関数が利用可能に なります。 `npm install` を実行する必要はありません。これらはNodeのようにbrowserifyに あらかじめ組み込まれています。 プログラムができたらエントリーファイルを `browserify` でコンパイルし、 `$ADVENTURE_COMMAND verify` にパイプで渡してください: browserify main.js | $ADVENTURE_COMMAND verify 検証なしでプログラムを走らせたい場合には以下のようにします。 browserify main.js | $ADVENTURE_COMMAND run