キャンプ4日目に、グループ実習で通信対戦型のテトリスを作ろうという話になって、僕がクライアント側のJavaScriptのコードをだいたい書いて、id:qnighyがRubyでサーバー側のComet通信の部分を担当する、といったことをしてた。 Comet通信もこの時初めて知って、クライアントとCGIを常に繋ぎっぱなしにして、CGI側が必要になった時リクエストを切って、情報を渡す。情報を受けとったらすぐリクエストを投げて繋ぎっぱなしにする。といった感じで通信を行なう。ということをした。 JavaScript側のComet通信の一部のコードも掲載してみる。最新のコードをgitから落してくるのを忘れたので、このままでは動かないけど、ロジックはこんな感じ、といったことで。 やってることは、クライアント側がしばらくリクエストが帰ってこないと勝手に切っちゃうので、CGI側が10秒程度で一旦、jsonで