CTOCIO IT专家网

天极传媒 比特网 | 天极网 | IT专家网 | IT商网 | 52PK游戏网 | 手机天极 | IT分众 |
IT专家网搜索

您现在的位置: IT专家网 > Web服务子站 > XML技术

在请求和响应中使用 XML

作者: 佚名,  出处:IT专家网论坛, 责任编辑: 包春林, 
2008-05-16 04:00
  这篇文章主要探讨在大多数情况下确实是 好主意的一种做法:向客户机返回 XML 响应。

  服务器端的 XML:一个简单的示例

  我不会谈太多有关如何在服务器上生成 XML 的内容,但花点儿时间看一个简单的示例是值得的,我没有给出过多的注释,以便您自行思考如何应对这样的场景。清单 9 展示了一个简单的 PHP 脚本,假设有一个异步客户机发出了请求,该脚本将输出 XML 来应答此请求。

  这是一种强力(brute force)的方法,PHP 脚本实际上是手动生成 XML 输出。您可以找到许多工具包和 API,用于 PHP 和其他众多允许您生成 XML 响应的服务器端语言。无论您的情况如何,这都至少能让您了解生成 XML 并以之应答请求的服务器端脚本看上去是什么样子。

  清单 9. 返回 XML 的 PHP 脚本

  

      < ?php

  // Connect to a MySQL database

  $conn = @mysql_connect("mysql.myhost.com", "username", "secret- password");

  if (!conn)

  die("Error connecting to database: " . mysql_error());

  if (!mysql_select_db("television", $conn))

  die("Error selecting TV database: " . mysql_error());

  // Get ratings for all TV shows in database

  $select = 'SELECT title, rating';

  $from = ' FROM ratings';

  $queryResult = @mysql_query($select . $from);

  if (!$queryResult)

  die("Error retrieving ratings for TV shows.');

  // Let the client know we're sending back XML

  header("Content-Type: text/xml");

  echo "< ?xml version=\"1.0\" encoding=\"utf-8\"?>";

  echo "< ratings>";

  while ($row = mysql_fetch_array($queryResult)) {

  $title = $row['title'];

  $rating = $row['rating'];

  echo "< show>

  echo "< title>" . $title . "< /title>";

  echo "< rating>" . $rating . "< /rating>";

  echo "< /show>";

  }

  echo "< /ratings>";

  mysql_close($conn);

  ?>

  您应能够使用您偏爱的服务器端语言以类似的方式输出 XML。IBM developerWorks 上有许多文章可以帮助您了解如何使用您喜爱的服务器端语言生成 XML 文档(相关链接请参见 参考资料)。

  解释 XML 的其他可选方法

  除将 XML 作为无格式文本处理或使用 DOM 处理之外,还有一种非常流行的选择很重要,值得一提。那就是 JSON(JavaScript Object Notation),这是一种绑定在 JavaScript 内的自由文本格式。这篇文章中没有足够的空间介绍 JSON,在后续文章中将探讨相关内容;只要提起 XML 和 Ajax 应用程序,您就很可能会听到有人谈论 JSON,因此现在我将告诉您,您的工作伙伴们在谈论的究竟是什么。

  大体上,可以用 JSON 做的事,用 DOM 都可以完成,反之亦然;选择主要取决于偏好,当然也要为特定的应用程序选择正确的方法。就现在而言,您应坚持使用 DOM,在接收服务器响应的过程中熟悉 DOM。我将占用几期文章的篇幅、用大量的时间去探讨 JSON,之后您就可以随意选择在下一个应用程序中使用那种技术了。请继续关注本系列:后续文章中将介绍关于 XML 的更多内容。

共5页。 9 1 2 3 4 5

网友评论

笔名 
请您注意:遵守国家有关法律、法规,尊重网上道德,承担一切因您的行为而直接或间接引起的法律责任。    IT专家网友拥有管理笔名和留言的一切权利。
  • 周排行榜
  • 月排行榜

邮件订阅

       
天极服务 | 关于我们 | 网站律师 | 加入我们 | 联系我们 | 广告业务 | 友情链接 | 我要挑错
All Rights Reserved, Copyright 2004-2008, Ctocio.com.cn
渝ICP证B2-20030003号 如有意见请与我们联系 powered by 天极内容管理平台CMS4i