以文本方式查看主题

-  计算机科学论坛  (http://bbs.xml.org.cn/index.asp)
--  『 HTML/XHTML/Ajax/Web 2.0/Web 3.0 』  (http://bbs.xml.org.cn/list.asp?boardid=22)
----  ajax 使用心得  (http://bbs.xml.org.cn/dispbbs.asp?boardid=22&rootid=&id=57142)


--  作者:webshop
--  发布时间:12/24/2007 6:11:00 PM

--  ajax 使用心得
ajax 使用心得

2005年2月,ajax在Jesse James Garrett的介绍下与大家见面了,并且马上在业界走红。我接触ajax的时间不是很长,在没认识他之前,总认为那是多么高级的应用啊!总认为他有多么的高深多么的难!当了解了他之后觉得,他没有想像中的那么难以琢磨!
传统的交互是整个页面的刷新,交互中有大量的冗余数据。那样占用了大量的带宽,降低了浏览器响应速度。而ajax的出现正好解决了这个难题的,其实ajax是众多技术“组装”出来的,其核心的就是javascript了,提到javascript 我想大家都是比较熟悉的:他是一种基于对象和事件驱动并具有安全性能的脚本语言,他原本是用来使网页变的生动的!现在在ajax技术担当了重要的角色----------与后台通信。XMLHttpRequest对象在技术中起到了主要的作用!
if(window.XMLHttpRequest) {
        this.req = new XMLHttpRequest();
    } else if(window.ActiveXObject) {
        try {
            this.req = new ActiveXObject("Msxml2.XMLHTTP");
        } catch(e) {
            try {
                this.req = new ActiveXObject("Microsoft.XMLHTTP");
            } catch(e1) {
               //
            }
        }
    }
上段代码就是创建一个XMLHttpRequest对象,由于浏览器的厂商不同对XMLHttpRequest对象的实现也不同!有了XMLHttpRequest对象就可以向后台异步发送请求而不惊动用户界面。可以通过他的send方法向后台发送一个xml ,通过open方法打开后台链接。XMLHttpRequest对象还有个重要的事件onreadystatechange ,他可以监听后台的反应,readyState属性可以标识响应情况:0 = 未初始化,1 = 正在加载2 = 加载完毕,
3 = 交互,4 = 完成 ,当readyState属性状态为4时就说明响应已经完成了,但是相应完成并不代表一定成功了 还有个status属性标识响应的状态, HTTP响应信息状态码有很多在这里我之列举几种常见的,在ajax应用中以下几种状态码是要处理的:
200 =  一切OK。
403  =  由于服务器上文件或目录的权限设置导致资源不可用
404 =  没有找到指定的资源
500 =  一般为你的后台程序抛出异常了。
当返回的状态码为200时就说明 一次请求已经成功的响应了,你就可以通过DOM对 responseText进行解析了,这样一次异步调用就完成了。
有必要时要设置RequestHeader,比如请求类型(content-type) 缓存( Cache-Control )特别是字符编码格式,有时会遇到返回的是一串乱码,那就要统一字符编码格式。
这样说起来 ajax也就那么回事,当然这个只是最原始最基本的,了解了他的核心你使用起ajax框架来也就顺畅多了,现在有很多出色的ajax的框架,比如Dojo ,Google AJAXSLT ,Ajax.Net ,Java BluePrints …… 这些框架各有各的特点,大多数都只支持某一种语言。开发者开发java web程序就要去寻找支持java的框架 要开发.net程序就的去寻找支持net程序的框架。这样很不方便。其实webshop就是个不错的开发ajax程序的工具,有了他你就不用在为找合适的框架而烦恼了,他支持java net php vb等流行开发语言,并且还支持可视化操作,Webshop的ADL库对ajax做了很好的封装,操作后台就像调用前台方法一样简单。

知道了ajax原理,又有这么好用的现成的开发工具,现在ajax开发不再难了吧?还不快去下载webshop体验一下吧!


--  作者:enyaxp
--  发布时间:12/26/2007 7:16:00 PM

--  
一直用Eclipse的js插件开发Ajax。
Ajax入门还不算难,像楼主提到的那些就可以构建一个基本的Ajax页了。
Ajax一个很大的优点就是将服务器端所需要做的工作简化为仅仅提供数据就行了,结合javascript就大大提高了具体应用的灵活性。

开发web应用越来越像一门艺术了。


--  作者:webshop
--  发布时间:12/27/2007 10:25:00 AM

--  好用呢
webshop是第一款可视化开发平台,并且支持Java,.net,php的后台开发,有一个集成的组件库,使用十分方便,容易上手。
--  作者:enyaxp
--  发布时间:12/27/2007 3:14:00 PM

--  
是JoyiStar的Ajax WebShop吗?

听人说过,用用看吧。


--  作者:webshop
--  发布时间:1/3/2008 1:47:00 PM

--  挺好用
就是Joyistar的webshop,马上要发布组件库了,越来越方便用户使用了。
W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
63.477ms