第一个ajax

今天做642的mastermind游戏,要求是要在游戏功能的基础上实现网页实时聊天。
于是开始research:

  •  如果直接用servlet或者jsp做一个很容易,用一个全局变量存储消息,然后不停读取就可以了,但是那样带来的问题是页面会不停刷新,用户体验应该很差。
  1. 于是开始打ajax的主意,以为它虽然不能前进后退,但不会闪烁,只刷新局部。
  2. 先确定交换格式,既然是ajax就用xml吧,用最简单的messages root中夹message node。
  3. js中提交message和“send”或者“query”,用post应该比较优雅。
  4. 然后在servlet中处理,send的话直接在list中添加,然后以xml格式返回list;query的话就直接返回xml了。这里因为一个空格至少浪费了三个小时,就是<message>的时候,我在m前多加了个space,结果client死活读不出,造孽呀。debug了无数地方才找出来,stupid!
  5. client得到结果,直接用xmlResponse处理显示

总的来说用ajax做这种要实时显示还是很优雅的。

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s