第3回node.jsを利用した開発とWebサイトへのデプロイ 芝村達郎 2013-01-31
こんばんは。古くて重いMacBook Proを背負って腰が崩壊した@daybysay です。 腰に課題を感じるエンジニアの皆様におかれましてはぜひ軽めのMacBookを背負ってご活動をお勧めいたします。 さて、今回はは複数人で同期しながら遊べるタイプのVRコンテンツ開発を試してみました。 内容としては、A-FrameとWebSocketを使ったリアルタイムマルバツゲームの実装です! 出来上がりはこんな感じです。 リポジトリはこちら github.com そして今回出来上がったマルバツゲームへのリンクがこちらです。 目次 目次 アプリの構想 環境構築 アプリケーション実装 クライアントサイドの実装 マス目を置く プレイヤー(カメラ)を用意 クリックできるようにする プレイヤー名表示 サーバサイドの実装 Socket.IOを使う準備をする 別々のプレイヤーとして接続できるようにする マス目のク
Node.jsからSocket.IOを使う上で知っておくべきWebSocketの背景やSocket.IOの知識についてまとめてみました。 後半はインストール方法とサンプルになります。 1. Socket.IOとは 1.1. HTTP クライアントからサーバーにリクエストを送り, サーバーはそれに対してレスポンスを返すというプロトコルです。 サーバーからクライアントに対してリクエストや通知を送信する方法は用意されていません。 1.2. ポーリング クライアントからサーバーに定期的にリクエストを送信する方法。 無駄なリクエストが増えてしまうという欠点があります。 1.3. WebSocket 2011年にRFC6455で仕様が提案されたサーバーとクライアントの双方向通信用のプロトコルで, 非同期かつ双方向の通信を可能にしています。 ブラウザのバージョンによってはサポートしていないものもあるので
WebSocketによる通信 WebSocketの場合、一度コネクションが確立してからはそのコネクションを利用して独自のプロトコルで通信が行われる。リクエスト/レスポンスのたびにHTTPのコネクションを張るAjaxやCometとはその点が決定的に異なる。 WebSocketでは、通信時に指定するURLは、プロトコル部分に「http:」ではなく「ws:」または「wss:」を使用する。コネクションの確立(ハンドシェイク)にはHTTPヘッダが利用されるので、サーバは最初はHTTPの接続リクエストとして処理するが、それ以降はWebSocketプロトコルを利用するように切り替えられる。ハンドシェイクの際にブラウザからサーバに送られるヘッダは次のような形式になる。 ハンドシェイクの際にブラウザから送られるリクエスト・ヘッダの例(出典:The WebSocket Protocol) GET /chat
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く