人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

socket.ioでflashsocketを使おうとしても接続されません。

同様の環境でwebsocketは使用出来ています。
また、下記のURLを参考に
「Flashのソケットポリシーファイル」
http://gimite.net/pukiwiki/index.php?Flash%A4%CE%A5%BD%A5%B1%A5%C3%A5%C8%A5%DD%A5%EA%A5%B7%A1%BC%A5%D5%A5%A1%A5%A4%A5%EB
ポリシーファイルは既に立てています。
<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy>
<allow-access-from domain="*" to-ports="*"/>
</cross-domain-policy>


何か他に設定が必要なのでしょうか。


●質問者: Hajimex
●カテゴリ:コンピュータ インターネット
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● pigmon88
●100ポイント

http://blog.glasses-factory.net/2011/10/17/GFS-I-OAS3---Socket-IO-AS3-WebSocket


Hajimexさんのコメント
これはflashsocketしか使わない前提でflashsocketを使おうという話だと思います。 うちはあくまでsocket.ioを利用して、 websocketが使えるchrome,FF,safariではwebsocketを使用し、 websocketが使えないIEなどではflashsocketを使いたいと思っています。

2 ● oil999
●100ポイント ベストアンサー

下記のように、transportにflashsocketは設定しましたか?
デフォルトではflashsocketはoffなので。

var io = require('socket.io').listen(80);

io.configure('production', function(){
 io.enable('browser client etag');
 io.set('log level', 1);

 io.set('transports', [
 'websocket'
 , 'flashsocket'
 , 'htmlfile'
 , 'xhr-polling'
 , 'jsonp-polling'
 ]);
});

io.configure('development', function(){
 io.set('transports', ['websocket']);
});

Hajimexさんのコメント
はい、行いました。

Hajimexさんのコメント
io.set('transports', [ 'flashsocket' ]); として、flashsocketしか選択出来ないような状態にしてやってみました。

質問者から

safari, chrome等で実験を行っていたことが原因でした。
socket.ioはIEのときにのみ、flashsocketが使用可能という仕様でした。


関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ