IT用語辞典バイナリ | さくいん | サイトマップ | ヘルプ | お気に入りに追加  
HTML5 JavaScript API
IT用語辞典バイナリ<パソコン用語・コンピュータ辞書>
コンピュータ偉人伝<人物・画像・写真・プログラミング>
コンピュータ偉人伝<人物・画像・写真・プログラミング>
コンピュータ偉人伝<人物・画像・写真・プログラミング>
拡張子辞典<ファイル・変換・変更・表示>
HTML5タグリファレンス
CSS3リファレンス
HTML5 JavaScript API
エクセル関数リファレンス
ITパスポート試験
 
  
  IT用語辞典バイナリ > HTML5 JavaScript API > WebSocketの使い方 > クライアント側からデータの処理方式を指定するには?
  カテゴリ別さくいん

クライアント側からデータの処理方式を指定するには?

クライアント側からデータの処理方式を指定するには

解説

ファイルの送受信を行う場合と、チャットで発言を送受信する場合とでは、データの内容や書式エンコード、デコードの方式も違う方が効率的です。こういった場合、サブプロトコルの指定を行います。

サブプロトコルはWebSocket通信プロトコルの挙動ではなく、その上で送受信されるデータの取り扱いに関する、アプリケーション同士での取り決めです。

サブプロトコルの指定は、WebSocketオブジェクトのコンストラクター「WebSocket(url,[protocol])」の省略可能な第2引数protocolで行います。

引数protocol文字列か、文字列配列で、サブプロトコルの名前を指定します。配列形式で複数のサブプロトコルを指定した場合、サーバー側はそのうちサポートしているものを一つ選択します。

サーバー側で選択されたサブプロトコルは、WebSocketオブジェクトprotocol属性に格納されます。サーバーが、クライアントが指定したサブプロトコルをサポートしていなかった場合、接続は失敗します。

サブプロトコル名はUS-ASCIIの範囲に制限されており、全角文字などは使用できません。

// infoは情報表示用のdiv要素

var ws = new WebSocket("ws://example.com/app",["chatA","chatB"]);

var ws2 = new WebSocket("ws://example.com/app","file");

function chatHanlder(event){
   var protocol = event.target.protocol;
   if(protocol == "chatA"){
       //chatAサブプロトコルの場合の処理
   } else  if(protocol == "chatB"){
       //chatBサブプロトコルの場合の処理
   } 
}

function fileHanlder(event){
    //fileサブプロトコルの場合の処理 
}

ws.onmessage = chatHanlder;

ws2.onmessage = fileHanlder;

SafariOperaでは、コンストラクタの引数としてサブプロトコルを受け付けはしますが、サーバーがどのサブプロトコルを選択したかを示すWebSocketオブジェクトprotocol属性が存在せず、この属性を利用して処理を分けることはできません。

関連項目




iPhone 8iPhone 8
Appleが2017年9月に発表した4.7インチ画面のスマートフォン。
iPhone XiPhone X
Appleが発表したスマートフォン。
Galaxy Note 8Galaxy Note 8
サムスン電子が発表したスマートフォン。

 ・ITパスポート試験とは
 ・試験範囲と内容
 ・サンプル問題にチャレンジ

 ・Windowsの歴史
ジョン・マッカーシー LISPの開発者
ジョン・マッカーシー
人工知能の研究分野における第一人者。
スティーブ・ジョブズ Appleの共同創設者
スティーブ・ジョブズ
「Mac」や「iPhone」を生み出した経営者。
デニス・リッチー C言語、UNIXの開発者
デニス・リッチー
C言語の設計、UNIXの開発に携わった人物。
».m4b MPEG-4オーディオファイルの拡張子。 up!
».m4r iPhoneの着メロにするAACファイルにつく拡張子。 up!
».xlsx Excel 2007で作成したファイルのデフォルトの拡張子。
».docx Word 2007の標準的な保存形式。XML形式となっている。

2017年9月25日現在
ランキング1   ICT (用語辞典)
ランキング2   NMS (用語辞典)
ランキング3   コンテキスト  (用語辞典)
ランキング4   スワイプ  (用語辞典)
ランキング5   セグメント  (用語辞典)
ランキング6   デプロイ  (用語辞典)
ランキング7   リグレッションテスト  (用語辞典)
ランキング8   ベリファイ  (用語辞典)
ランキング9   リバースエンジニアリング  (用語辞典)
ランキング10   ネイティブアプリ  (用語辞典)
RSS 0.91 RSS 1.0 RSS 2.0
IT用語辞典バイナリについてウェブリオ株式会社についてお問い合わせ先テクニカルライター募集利用規約
プライバシーポリシー著作権・商標について協力社一覧Weblio 辞書スマート翻訳英和辞典 - Weblio辞書Weblio英会話
©2012 Weblio, Inc. All rights reserved.