Ajax基础教程(4)- 实现基本Ajax技术 4.8 访问Web服务

豆豆网   技术应用频道   2007年11月21日    社区交流

本文详细介绍Ajax基础教程(4)- 实现基本Ajax技术 4.8 访问Web服务

  Yahoo! Search把结果返回给网关,而且网关将结果再转发给浏览器后,会调用parse-

  SearchResults函数。这个函数从XMLHttpRequest对象获取得到的XML文档,并查找所有标记名为Result的元素。

  各Result元素传给parseResult函数。这个函数使用Result元素的子元素Title、Summary、ClickUrl和Url创建内容,并增加到页面。

  可以看到,与基于REST的Web服务结合使用时,Ajax技术相当强大。如果想在你自己的域中访问Web服务,用JavaScript就可以完成。否则,当访问其他域的资源时,就要创建外部资源的某种网关,这样就能避免浏览器安全沙箱问题。

  图4-15显示了结合使用Yahoo! Search Web服务和Ajax的搜索结果。

Ajax基础教程(4)- 实现基本Ajax技术 4.8 访问Web服务

  图4-15 结合使用Yahoo! Search Web服务和Ajax的搜索结果

  Ajax也能与SOAP一同使用吗?

  可以结合使用Ajax和SOAP吗?答案很简单——可以。Ajax技术和基于SOAP的Web服务可以一同使用,不过,与使用基于REST的Web服务相比,这需要做更多的工作。

  REST和SOAP都把响应返回为XML文档。二者之间最显著的差异是,REST将请求作为带查询串参数的简单URL发送,而SOAP请求是具体的XML文档,通常通过POST而不是GET发送。

  结合使用SOAP和Ajax时,要求以某种方式创建SOAP请求的XML,这可能并不容易。一种做法是使用串连接来创建请求XML。尽管概念上讲很简单,但这种方法有些混乱,而且很容易出错,如很容易这儿忘了双引号,那儿忘了加号。

  还有一种选择是使用一个XMLHttpRequest请求从网站加载静态XML文档,文档是SOAP请求的模板。一旦加载了模板,就可以使用JavaScript DOM方法来修改模板,使之满足特定的请求。请求准备好后,再用第二个XMLHttpRequest请求发送新创建的SOAP请求。

  查看全套Ajax基础教程。

来源:CSDN    责编:豆豆技术应用

正在加载评论...