【始まりはいつも突然に】
まぁ、何ですか。普段はあまりこうゆう事は書かないんですが、
何処に書いたらいい物やらだったので独り言書き留め場のここに書こうかと思います。
ってかここはそんなポジションだったのか。
何しろ私はプロじゃないので、以下の文章には多々間違った点があるかもしれませんが、
生暖かい目で見守ってくれたまへ。


【金(閣)寺】
もうすぐCS版beatmania IIDX14 GOLD(以下寺金)の発売日ですね、
まだ2週間くらいあったような気がするけど。
まぁそれはいいとしてさ、その裏でひっそりと非公式WRとかやってるわけですよ。
知ってる人いるかもいないかもだけどさ。
んで、ですね、今回は随分色々仕込んであるみたいで、
あ、いや、僕が作ってるわけじゃないからわからないんですけどね!
イデアマンですよ私はえぇえぇ。まぁとにかく色々仕込んであるんですけど。
変に捻くれたアイデアもいっぱいで。で。そーゆーのをどうやって処理してるかっつ話ですよ。


【彼は僕等の捻くれた言葉にいつだって全力で答えてくれる】
非公式WRとゆーのは有志が集まってcgiとかphpとかを使ってWEB上からスコアの登録をし、
それを閲覧するシステムです。
WEBを使っている以上、ブラウザを通して僕達はそれを見るわけですが、
それは「僕達が出来る事は高々WEBブラウザ上で実行できる事に限られている」という事です。
ところが、少ないように思える「高々WEBブラウザ上で実行できる事」は意外と多かったりするわけです。
ブラウザ上でのイベントはjava scriptとかDHTMLとかで実行すればいいわけですから。
問題は、「起こした事をどうやってcgiに伝えるの?」って事です。その為にクッキーを使っているわけです。


【クッキーは美味しい】
クッキーというのは、小麦粉に牛乳、バター、砂糖などをまぜ…え?違う?ソウデスネ。
クッキーというのはWEBサーバー側とブラウザ側でデータのやりとりをするシステムなわけですが、
これを使ってどうするのかというと、java scriptはクッキーにデータを焼き込む事が可能ですので、
「イベントが起こった直後クッキーを焼き込む」事で「そのイベントを起こした」事になるわけです。
後はcgi側がそれを解析してデータファイルに出力してくれればいいわけです。
わーいこれで解決だね!とは行かないのが世の中の常なるぞ。


【クッキーは不味い】
非公式WRに参加してくださっている方などは知っておられるかと思いますが、
あのシステムは1つのcgiから出来てるわけではありません。多数のcgiから出来ているシステムです。
さて、先のクッキーによるイベントフラグの管理に基づけば、以下のようなデータの流れが実行されるわけです。
java scriptイベント起こす -> クッキーに焼き込む -> クッキー解析しデータを出力するcgiにアクセス -> イベントフラグ出力
ですが、この方法には少々問題があります。
・(1)たまにクッキー食ってくれない(セキュリティの関係とかで)。
・(2)データ解析cgiにアクセスしてくれるとは限らない。
・(3)そもそもjava scriptを実行してくれない。
したがって、現状採用している流れにはやや不確定性があります。
(3)はどうしようもない…として、(1)(2)くらいはどうにかならないだろうか?
したがって、無駄なステップを省いた以下のようなステップを考えます。
java scriptイベント起こす -> cgiを実行したイベントを引数にして叩く -> イベントフラグ出力
おお、これなら確実だ。間に無駄な処理が一切入りません。
…ん?でも1個大きな問題があるぞ?java scriptってんな事できんの?
そりゃ問題だ。だって出来ないものは出来ないんだもん妄想したってしょうがない。
ところが、これにXMLHttpRequestを合わせた、通称Ajaxを使ってどうにかしちゃおう、
という企画です。続く!かもしれない。