在前一篇文章中,如何通过CFINVOKE 标签调用ColdFusion 组件。CFINVOKE 也可以从非ColdFusion 系统的公共站点或其他服务源调用服务。比如,我将从slashdot.org 调用Headline Grabber Web service 服务。这个web 服务会从Slashdot.org 返回包含最新头条信息的 XML 数据包。
怎么找到服务?
我是从Xmethods 找到这个 Web 服务的。你也可以从这个有价值的网站找到很多 web 服务。
调用目标 web 服务的代码极其的简单,你可以看看 Listing A。
返回的XML数据是作为称为SlashdotHeadlines 的变量。XML 数据包的形势清参考Listing B(为了加强可读性我们加入了格式)。
说到这里也许你会想:“既然我已经得到了头条的XML,但是现在怎么办?”好的,我们有很多选择。ColdFusion MX 包括了大量的用来处理XML 数据的函数和标签。
Figure A
我将使用XMLParse() 函数把生涩的XML解析成为ColdFusion 的XML文档对象,如图A。一旦我解析了 XML 对象,就可以利用ColdFusion
结构语句将任何代码来处理它。
Listing C.中的代码输出了 XML 对象中的第二个故事。