SlideShare a Scribd company logo
HTML5など
勉強会 Vol. 8
WebSocket 入門編
2012/2/9 @ 某社
System Management Headquaters
George Harada
提 供
勉強会スタッフ
(ボランティア)
システム統括本部
Agenda
1. DEMO 1
2. WebSocket ?
3. DEMO 2
Agenda
1. DEMO 1
2. WebSocket ?
3. DEMO 2
DEMO 1
DEMO 1から抜粋
DEMO 1から抜粋
DEMO 1から抜粋
DEMO 1から抜粋
DEMO 1から抜粋
DEMO 1から抜粋
DEMO 1から抜粋
DEMO 1から抜粋
Agenda
1. DEMO 1
2. WebSocket ?
3. DEMO 2
リアルタイム
双方向通信
実現するための通信技術
WebSocketとは
HTTPリクエスト
HTTPレスポンス
Webサーバ
クライアント
(ブラウザ)
HTTP
・リクエストとレスポンスは必ずセット
・リクエストは常にクライアントから
WebSocketサーバ
クライアント
(ブラウザ)
WebSocket
Upgrade
WebSocket
接続確立後はどちらからでも
データの送信が可能
HTTPリクエスト
HTTPレスポンス
リアルタイム
双方向通信
実現するための通信技術
H
T
T
P
で
は
不
可
能
な
H
T
T
P
よ
り
効
率
的
な
WebSocketとは
そのまま使えるブラウザ
Chrome(4.0 以降) ※for Android Beta は ICS 以降
Safari(5.0 以降) ※iOS 4.2 以降
ベンダープレフィックスが必要なブラウザ
Firefox(6.0 以降) ※for Mobile は 7.0 以降
ユーザによる有効化設定が必要なブラウザ
Opera(11.0 以降)
対応予定
Internet Explorer (10.0 以降)
対応ブラウザ(2012/02/08 現在)
Android標準ブラウザは非対応
// WebSocketサーバに接続 (暗号化通信は 'wss://' を利用)
var ws = new WebSocket('ws://www.w3.org:443/echo');
// メッセージを送信
ws.send('送信データ');
// メッセージを受信(イベントハンドラ)
ws.onmessage = function(event) {
// 受信データを取り出す
var message = event.data;
};
// 接続を切断(あまり使わないはず)
ws.close();
クライアント実装 (JavaScript)
onopen
onclose
onerror
readyState
他によく使う
WebSocket プロパティ
// WebSocketサーバに接続
var ws = new WebSocket('ws://www.w3.org:443/echo');
URL を要求: ws://www.w3.org:443/echo
リクエストメソッド: GET
ステータスコード: 101 Web Socket Protocol Handshake
リクエストヘッダ
Origin: http://www.w3.org
Sec-WebSocket-Key1: fg182#9$ 11 9a y: 10+
Connection: Upgrade
Host: www.w3.org:443
Sec-WebSocket-Key2: 35 ?6w4785 8 1 6
Upgrade: WebSocket
レスポンスヘッダ
Sec-WebSocket-Location: ws://www.w3.org:443/echo
Sec-WebSocket-Origin: http://www.w3.org
Connection: Upgrade
Upgrade: WebSocket
Handshakeの流れ
(1) ブラウザから、接続確立のための
 HTTPリクエストをWSサーバに送信
(2) WSサーバは、リクエストの内容を
 確認して接続許可のHTTPレスポンスを
 ブラウザに送信
(3) ブラウザは、接続をWebSocketに
 アップグレード
この一連の流れを Handshake と呼ぶ
・メジャーな開発言語には、便利なWebSocketライブラリが大体用意されており、
 比較的容易に環境を構築できる
・最近の流行は Node.js + α の構成(サーバサイドJavaScript)
・ライブラリが対応するWebSocketの規格(バージョン)には注意が必要
・社内Proxy等による、通信ポートの制約には注意が必要
続きはまた、別の お は な し 
WebSocketサーバ実装
と、いうわけで
ざっくりまとめ
リアルタイム
双方向通信
実現するための通信技術
H
T
T
P
で
は
不
可
能
な
H
T
T
P
よ
り
効
率
的
な
WebSocket (1)
// WebSocketサーバに接続 (暗号化通信は 'wss://' を利用)
var ws = new WebSocket('ws://www.w3.org:443/echo');
// メッセージを送信
ws.send('送信データ');
// メッセージを受信(イベントハンドラ)
ws.onmessage = function(event) {
// 受信データを取り出す
var message = event.data;
};
// 接続を切断(あまり使わないはず)
ws.close();
onopen
onclose
onerror
readyState
他によく使う
WebSocket プロパティ
WebSocket (2)
使い方は
カンタン
そのまま使えるブラウザ
Chrome(4.0 以降) ※for Android Beta は ICS 以降
Safari(5.0 以降) ※iOS 4.2 以降
ベンダープレフィックスが必要なブラウザ
Firefox(6.0 以降) ※for Mobile は 7.0 以降
ユーザによる有効化設定が必要なブラウザ
Opera(11.0 以降)
対応予定
Internet Explorer (10.0 以降)
WebSocket (3)
対応ブラウザに
気をつけよう
Agenda
1. DEMO 1
2. WebSocket ?
3. DEMO 2
DEMO 2
sample
-- 社内URL --
    ※Chrome または Safari でリンクを開いて下さい。
    ※WebSocketサーバはメンテナンス等のため予告無く停止する場合があります。
動画に含まれる、その他のデモをご覧になりたい方は
study_staff@ までご連絡ください
m(_ _)m
如何でしたか?
Future?
No, Tomorrow!
新しいサービスを
イロイロと考えて
みてください!!
勉強会スタッフ
絶賛募集中です
また次回
お会いしましょう
tthhaannkkss  !!
Special Thanks to
Assistant
Operation
Operation
Operation
Support
Support
Support
Support
順不同 敬称略
参考文献等
HTML5
- http://html5.jp/
- http://www.amazon.co.jp/徹底解説HTML5マークアップガイドブック-羽田野太巳/dp/4798025291
- http://www.amazon.co.jp/徹底解説-HTML5-APIガイドブック-ビジュアル系API編-羽田野/dp/4798028541
JavaScript
- http://www.amazon.co.jp/パーフェクトJavaScript-PERFECT-4-井上-誠一郎/dp/477414813X

More Related Content

PPTX
OSC2014 東京 owncloud性能検証
PPTX
オープンソースカンファレンス osc 2014 関西@京都 ownCloud説明
ODP
How to use PTI & IBRS patch
PPTX
Windows Server Community Meetup#1 : Windows Server 2019 networking update
PPTX
ownCloud 負荷測定検証レポート FUJITSU Storage ETERNUS CD10000
PDF
Internet Explorer 10 概要と変更点
PPTX
SCUGJ第18回勉強会:よろしい、ならばVMMだ
PPTX
ownCloud概要説明
OSC2014 東京 owncloud性能検証
オープンソースカンファレンス osc 2014 関西@京都 ownCloud説明
How to use PTI & IBRS patch
Windows Server Community Meetup#1 : Windows Server 2019 networking update
ownCloud 負荷測定検証レポート FUJITSU Storage ETERNUS CD10000
Internet Explorer 10 概要と変更点
SCUGJ第18回勉強会:よろしい、ならばVMMだ
ownCloud概要説明

What's hot (8)

PDF
5分でわかる!ownCloudアドオンの作り方
PPTX
Pasonatech docker hands on
PDF
後期第七回ネットワークチーム講座資料
PDF
Windows 10 の あたらしい Web ブラウザー について
PPTX
03.owncloudのエコシステム
PDF
Windows 10のWebブラウザ Microsoft EdgeとInternet Explorer 11
PDF
Durable Functions (Core) 気になっていたことを勉強がてら実装してみた
PDF
最近こんなのやってるぜ!
5分でわかる!ownCloudアドオンの作り方
Pasonatech docker hands on
後期第七回ネットワークチーム講座資料
Windows 10 の あたらしい Web ブラウザー について
03.owncloudのエコシステム
Windows 10のWebブラウザ Microsoft EdgeとInternet Explorer 11
Durable Functions (Core) 気になっていたことを勉強がてら実装してみた
最近こんなのやってるぜ!
Ad

Viewers also liked (7)

PPTX
Elementos de la administracion
PDF
W I E D Z A WstęP.Ppt
PDF
Gerencia de proyectos
PDF
Apostila de poesias dia mundial da água
PDF
-gestión-conocimiento (1)
PPTX
Taller # 1 identidad
PPT
Week7 Submit Analysis And Gain Agreement
Elementos de la administracion
W I E D Z A WstęP.Ppt
Gerencia de proyectos
Apostila de poesias dia mundial da água
-gestión-conocimiento (1)
Taller # 1 identidad
Week7 Submit Analysis And Gain Agreement
Ad

Similar to HTML5など社内勉強会 Vol.8 - WebSocket (20)

PDF
WebSocketを学ぼう!
PPT
websocket-survery
PPTX
再入門、サーバープッシュ技術
PDF
Gtug girls meetup web socket handson
PPTX
20110622 haruyama webso]cket
PDF
WebSocket + Node.jsでつくるチャットアプリ
PDF
AndroidでWebSocket
PDF
Html5, Web Applications 2
PPTX
SL囲む会東京5 Nodejs×Silverlightではまったこと
PDF
HTML5-pronama-study
PDF
20120525 mt websocket
PDF
WebSocket Protocol と Plack::Middleware::WebSocket
PDF
HTML5と WebSocket / WebRTC / Web Audio API / WebGL 技術解説
PPTX
JavaプログラマのためのWebSocket概要
PDF
WebSocket Chat App Hands On on Microsoft Azure
PDF
Nodejsによるwebsocket入門
PDF
WebSocket / WebRTCの技術紹介
PDF
第4回鹿児島node.jsの会資料_内村
PDF
Janogia20120921 yoshinotakeshi
PDF
Nodejs Introduction
WebSocketを学ぼう!
websocket-survery
再入門、サーバープッシュ技術
Gtug girls meetup web socket handson
20110622 haruyama webso]cket
WebSocket + Node.jsでつくるチャットアプリ
AndroidでWebSocket
Html5, Web Applications 2
SL囲む会東京5 Nodejs×Silverlightではまったこと
HTML5-pronama-study
20120525 mt websocket
WebSocket Protocol と Plack::Middleware::WebSocket
HTML5と WebSocket / WebRTC / Web Audio API / WebGL 技術解説
JavaプログラマのためのWebSocket概要
WebSocket Chat App Hands On on Microsoft Azure
Nodejsによるwebsocket入門
WebSocket / WebRTCの技術紹介
第4回鹿児島node.jsの会資料_内村
Janogia20120921 yoshinotakeshi
Nodejs Introduction

More from George Harada (12)

PDF
もし、IT関連企業で働くことになったら
PDF
暑い夏のお仕事
PDF
What is LT ?
PDF
いがいがさんと私
PDF
HTML5など社内勉強会 Vol.11 - High Performance Web and iOS 6 WebKit
PDF
HTML5など社内勉強会 Vol.5 - 入門JavaScript [非同期通信]
PDF
HTML5など社内勉強会 Vol.3 keynote
PDF
HTML5など社内勉強会 Vol.3 - 入門JavaScript
PDF
HTML5など社内勉強会 Vol.2 - HTML5, CSS3
PDF
HTML5など社内勉強会 Vol.1 - HTML, CSS, HTML5
PDF
LTとはなんぞ?
PDF
学生向け会社説明会でHTML5
もし、IT関連企業で働くことになったら
暑い夏のお仕事
What is LT ?
いがいがさんと私
HTML5など社内勉強会 Vol.11 - High Performance Web and iOS 6 WebKit
HTML5など社内勉強会 Vol.5 - 入門JavaScript [非同期通信]
HTML5など社内勉強会 Vol.3 keynote
HTML5など社内勉強会 Vol.3 - 入門JavaScript
HTML5など社内勉強会 Vol.2 - HTML5, CSS3
HTML5など社内勉強会 Vol.1 - HTML, CSS, HTML5
LTとはなんぞ?
学生向け会社説明会でHTML5

HTML5など社内勉強会 Vol.8 - WebSocket