ajax 已普遍用于许多知名的 web 应用程序服务,例如 gmail.google maps.flickr 与 odeo.com.通过使用异步 xml 消息传递,ajax 为 web 开发人员提供了一种扩展其 web 应用程序价值与功能的途径.这里介绍的 web services javascript library 扩展了该基础机制,其通过引入对调用基于 soap 的 web 服务的支持来增强 ajax 设计模式.
从浏览器中调用 web 服务
浏览器实现人员一致支持的机制之一是 xmlhttprequest api,它是 ajax 设计模式的核心.developerworks 网站最近发布的另一篇由 philip mccarthy 撰写的的文章详细介绍了该 api.xmlhttprequest 是一个用于执行异步 http 请求的 javascript 对象.philip mccarthy 在其文章中描述了一个顺序图(请参见图 1),此图对于理解 xmlhttprequest 对象如何支持 ajax 设计非常有帮助(请参阅参考资料,以获得指向全文的链接). 【程序编程相关:网络管理】
从 web 浏览器中调用 soap web 服务可能会比较麻烦,这是因为大多数流行的 web 浏览器在生成与处理 xml 方面都略有不同.所有浏览器都一致实现且用于 xml 处理的标准 api 或功能少之又少. 【推荐阅读:网络管理】
图 1. philip mccarthy 的 ajax 顺序图 【扩展信息:网络管理】560)this.style.width=560; onmousewheel = javascript:return big(this) height=626 src="http://images.51cto.com/files/uploadimg/20060214/1634010.jpg" width=520 border=1>
从此图中,您可以清楚地看到 xmlhttprequest 对象是如何工作的.一些运行在 web 浏览器内的 javascript 创建了一个 xmlhttprequest 实例与一个用于异步回调的函数.然后,该脚本使用 xmlhttprequest 对象对服务器执行 http 操作.在接收到响应后,调用回调函数.在该回调函数内,可能处理返回的数据.如果返回的数据碰巧是 xml,则 xmlhttprequest 对象将自动使用浏览器中内置的 xml 处理机制来解析该数据.
遗憾的是,使用 ajax 方法的主要难题在于 xmlhttprequest 对象自动解析 xml 的详细过程.... 下一页