MilkcocoaでBaaSを体験!~バックエンドの仕組みと使い方~

第4回 圧倒的にリアルタイム通信が楽しくなる! Milkcocoaをサーバーサイドで使ってみよう! ~Milkcocoa Node.js SDKの紹介~

この記事を読むのに必要な時間:およそ 3.5 分

今回の記事の対象者

ここからの内容は実際にコードを書いて一緒に試して頂きたいです。今回の記事では,以下の方が主な対象になると思います。

  • Node.jsを使ったことがあるエンジニア
  • Node.jsは触ったことが無いけれど,前回までのサンプルを動かしたことがあるフロントエンジニア・デザイナー・コーダー・ディレクターなど
  • IoTという言葉に興味があるエンジニア

これに当てはまらない方でも興味を持たれた方は是非チャレンジしてみてください。わからないところがあれば@n0bisukeまで気軽にご連絡ください。

Milkcocoa Node.js SDKを試してみよう

それでは実際にMilkcocoa Node.js SDKを使った開発を進めて行きましょう。

開発環境の説明

実際に開発に入る前に筆者の環境を参考までに紹介します。思わぬエラーやバグが出たときに参考にしてください。

  • Mac OS X 10.10 Yosemite
  • Node.js 0.12
  • Milkcocoa Node.js SDK
  • Socket.io-client 1.6.0

環境準備

Node.jsのインストール

すでにNode.jsが利用できる環境の方は,読み飛ばしてください。

Node.jsのインストールはこちらの記事を参考にしてnvm(Node Version Manager)を利用できるようにしましょう。

nvmはNode.jsのバージョンを指定してインストールしたり,簡単にバージョンを切り替えることが出来るツールです。

nvmのインストールが完了したら,nvmを使ってNode.jsをインストールしてみます。

$ nvm install 0.12

特にエラーなどが発生しなければこれでNode.jsのインストールが完了です。-vオプションでバージョンが確認できるので確かめてみましょう。

$ node -v
v0.12.0
Milkcocoa SDK の準備

MilkcocoaはNode.jsのSDKも公開されています。このSDKはまだ開発版のため,今後は仕様が変わる可能性があるので注意してください。

MilkcocoaのCDNからzipファイルをダウンロードしてきましょう。npm経由ではないので注意して下さい。

図7 ダウンロードしたzipファイルを展開したところ

図7 ダウンロードしたzipファイルを展開したところ

展開したフォルダ内のindex.jsがSDKの本体になります。

サンプルを動かしてみよう

準備が整ったところでサンプルを動かして雰囲気を掴んでみましょう。先ほどのmilkcocoaフォルダ内でモジュールのインストールをします。

$ npm i

これで必要なモジュールがインストールされます。node_modulesというフォルダとフォルダ内にsocket.io-clientフォルダが出来ているのがわかると思います。

図8 socket.io-clientフォルダが出来る

図8 socket.io-clientフォルダが出来る

同梱されているpackage.jsonを確認してみます。

package.json

{
  "name": "milkcocoa-node",
  "version": "0.0.1",
  "description": "milkcocoa client for Node.js.",
  "main": "index.js",
  "scripts": {
    "test": "npm test"
  },
  "repository": {
    "type": "git",
    "url": "https://github.com/milk-cocoa/milkcocoa.git"
  },
  "dependencies": {
    "socket.io-client" : "1.0.*"
  },
  "keywords": [
    "milkcocoa",
    "realtime"
  ],
  "author": "Technicak Rockstars",
  "license": "MIT",
  "bugs": {
    "url": "https://github.com/milk-cocoa/milkcocoa/issues"
  }
}

"socket.io-client" : "1.0.*"という記述があります。Milkcocoa Node.js SDKを利用するうえで必要となるのは,socket.io-clientというモジュールなので,自身で利用する際にもこのように記述しておくと良いでしょう。

先ほどのmilkcocoaフォルダ内にあるsample.jsが実行サンプルになります。

それでは実行してみましょう。以下のような感じで出力されればサンプルの動作は成功です。

$ node sample.js
connected
{ path: 'nodejs',
  id: 'i7b9zy790001egf',
  value: { text: 'あああいうえお', id: 'i7b9zy790001egf' },
  error: null,
  sys: { path: 'nodejs' } }

著者プロフィール

菅原のびすけ(すがわらのびすけ)

株式会社LIG エンジニア。1989年生まれ。岩手県立大学在籍時にITベンチャー企業の役員を務める。

同大学院を卒業後,株式会社LIGにWebエンジニアとして入社し,Web制作に携わる。

最近は特にIoT領域,インタラクティブな企画実装などに従事している。

マッシュアップアワードを始めとしたハッカソン等で入賞歴あり。

家賃0円クリエイターズシェアハウス第1期生。ジーズアカデミー第1期メンター。

LIGinc,HTML5Experts.jp,さくらのナレッジ,gihyo.jpなどでも執筆・寄稿をしている。

Milkcocoaエバンジェリスト,特技はわんこそば,趣味は雪合戦。

Twitter:@n0bisuke

LIGincプロフィール:http://liginc.co.jp/member/member_detail?user=nobisuke