2009-01-21 (水)
研究室.サークル.ラーメン.
*ActionScriptのSocket
普通にソケットが使えるんですね.ネトゲとか色々作れそうです.
ただ,すぐにサーバに接続できるわけではなくて,接続されるサーバ側のポリシーファイルで接続を許可してやる必要があるみたいです.
最近のFlashPlayerの場合,サーバの843番ポートで待ち受けて「<policy-file-request/>」というリクエストに対して「<cross-domain-policy><allow-access-from domain="*" to-ports="*"/></cross-domain-policy>」というような応答をすれば良いようです.
843番に接続できない場合は,実際に通信に使うポートに対して上記のリクエストが投げられるので,やっぱり同じように応答すると,一度コネクションが切断された後に,本当の接続が来ます.
気をつけないといけないのは「\0」がデリミタだということです.これに嵌りました.バッファを文字列として管理している場合は気をつけないとです.
とりあえず,C++でチャットサーバ書いてみたりする.
ついでに,普段使っているsocket.hを公開.…最近はSafiiのsocketstream.hをメインに使ってる気がしますが(汗)