チャットルームのテストページ

Server-Sent Events/Ajax/PHPを組み合わせたリアルタイム・チャットシステムです。SSEが実装されていないInternet Explorerでは利用できません。リアルタイムとありますが、ユーザー間で同期していないので実際には擬似リアルタイムです。

セキュリティについて、Ajax通信はトークンでCSRF対策を行います。入力文字のバリデーションはクライアント側で行い、制御文字や特殊文字は入力不可として送信しません。サーバー側の対策は出力時のエスケープ処理のみです。

Google ChromeのデベロッパーツールやFirebugなどでストリーミングの中身が確認できます。「ネットワーク」のタブを開くとchat-data-stream.phpがコネクションを張り続けているのがわかると思います。書き込まれた内容はキャッシュファイルに24時間保存され、その後に自動的に削除されます。

ソースコードをこちらのページで公開しています。ライセンスフリーです。

名前 メッセージ 送信時間