2013年1月19日土曜日

Node.js+Connectでシンプルなウェブサーバー

HTML5のFile APIを試したらNOT_READABLE_ERRになってうまくアクセスできなかった。
調べてみるとどうやらfile://..のようなURLでアクセスしたページでこのAPIを使ってファイルを読み込もうとするとこのエラーとなるらしい。
そこでhttp経由でアクセスできるようNode.jsを使ってローカルに静的コンテンツを返すだけのシンプルなウェブサーバーを立てました。

  1. Connectをnpmでインストール。

    % npm install connect
    
  2. 以下の内容でserver.jsを作成。

    ‘/Users/shinichy/hoge’の部分はドキュメントルートにしたいディレクトリを指定して下さい。
    ポート番号もお好みで。

    var connect = require('connect');
    connect.createServer(
      connect.static('/Users/shinichy/hoge')
    ).listen(8080);
    
  3. Node実行。

    % node server.js
    

ブラウザでhttp://localhost:8080にアクセスすると、/Users/shinichy/hoge/index.htmlの内容が表示されます。
このページ内でFile APIを実行すると無事ローカルのファイルを読み込むことができました。

0 件のコメント:

コメントを投稿