AmazonでInterfaceの9月号を買おうと思って、表紙を見たら、HTML5でIO~みたいなことが書いてありました。さっそくポチったのですが、明日以降雑誌が届く前に、関連しそうなところを予習してみようと思います。今回は、ネットなどでなんか聞いたことがある「Node.js」というWebサーバ?をRaspberry Piで試してみようと思います。
まず、ここを参考に Node.js をインストール。もっと新しいバージョンが入手できそうですが、実績(安全)を見て、サイトの通りのバージョンを選択しました。
wget http://nodejs.org/dist/v0.8.11/node-v0.8.11.tar.gz
tar -zxf node-v0.8.11.tar.gz
cd node-v0.8.11
./configure
make
sudo make install
で、インストール。make には少し時間がかかります。
node -v
で、バージョン確認して、インストール成功を確認。
npm -v
で、パッケージマネージャもバージョン確認。
ネットで「node.js入門」とかで検索すると、ほぼ同じサンプルが頻繁に見つかります。例によって node版Hello Worldです。helloworld.jsというファイル名で以下を作成。
var sys = require('sys');
var http = require('http');
var server = http.createServer(function (request, response) {
response.writeHead(200, {'Content-Type': 'text/plain'});
response.write('Hello World!!\n');
response.end();
}).listen(8124);
sys.log('Server running at http://127.0.0.1:8124/');
nodeを起動して、
node helloworld.js
Raspberry Piローカルからなら、
http://localhost(または、127.0.0.1):8124/
他PCからなら
http://Raspberry Piのアドレス:8124/
で、
となることを確認。
つづいて、入門サイトなどにも載っている connect と WebSocket と expressフレームワークは最低限使いそうなのでインストール。
npm install connect
npm install socket.io
npm install express
いくつかのサイトを参考にしつつ、 express のスケルトンを適当に生成してみる。
node node_modules/express/bin/express exptest
cd exptest
npm install
依存ファイルがインストールされて、
node app.js
とすると、「Express server listening on port 3000」と表示されるので、
http://localhost (あるいはRaspberry Piのアドレス):3000/
へアクセスすると
こんな感じで一応動作を確認。色々な方が公開してくれている情報があった(感謝!)ので、それらを断片的に拾い集めてきて、どうにか動作はさせられました。
続きは、AmazonからInterfaceが届いてから。おそらく、WebからのLチカの方法とかが書かれていると思うので、それを参考にして、「nodeでLチカ」を試してみたいと思います。
"npm install socket.io"ではなく、WebSocketをインストールするなら"npm install websocket.io"でした。間違いです。
返信削除