JSON php
如果您在本地安装了 Web 服务器(Apache、IIS 等)并安装了 PHP,您可以编写一个 PHP 脚本来生成股票数据并调用本地服务器。本示例的关键在于股票数据是 JSON 编码的,并且服务器是本地的。
- 创建一个 PHP 脚本。
- 在 Eclipse 包资源管理器中,选择
StockWatcher/war
文件夹。 - 从 Eclipse 菜单栏中,选择 文件 > 新建 > 文件。
- 在新建文件窗口中,输入文件名
stockPrices.php
- 在 Eclipse 包资源管理器中,选择
<?php
header('Content-Type: text/javascript');
header('Cache-Control: no-cache');
header('Pragma: no-cache');
define("MAX_PRICE", 100.0); // $100.00
define("MAX_PRICE_CHANGE", 0.02); // +/- 2%
echo '[';
$q = trim($_GET['q']);
if ($q) {
$symbols = explode(' ', $q);
for ($i=0; $i<count($symbols); $i++) {
$price = lcg_value() * MAX_PRICE;
$change = $price * MAX_PRICE_CHANGE * (lcg_value() * 2.0 - 1.0);
echo '{';
echo "\"symbol\":\"$symbols[$i]\",";
echo "\"price\":$price,";
echo "\"change\":$change";
echo '}';
if ($i < (count($symbols) - 1)) {
echo ',';
}
}
}
echo ']';
?>
编译 StockWatcher。
- 点击工具栏中的 GWT 编译项目按钮 或者运行
ant build
脚本来创建应用程序的生产模式文件(现在将包含 stockPrices.php)。
- 点击工具栏中的 GWT 编译项目按钮 或者运行
将 StockWatcher/war 目录中编译后的 StockWatcher 文件移动到本地安装的任何支持 PHP 的 Web 服务器(Apache、IIS 等)中的 /StockWatcher 目录。如果您没有使用 Java servlet(例如 GWT RPC),则无需将 StockWatcher/war/WEB-INF 中的文件移至该目录。
- 测试股票报价服务器。
- 在 Web 浏览器中,导航到
https://127.0.0.1/StockWatcher/stockPrices.php?q=ABC+DEF
- StockPrice 数据以 JSON 格式返回。
- 在 Web 浏览器中,导航到
[{"symbol":"ABC","price":40.485578668179,"change":-0.53944918844604},
{"symbol":"DEF","price":1.3606576154209,"change":0.0051755221198266}]
现在您可以从服务器检索 JSON 编码的股票数据,请继续执行 JSON 教程中的下一步,在客户端代码中操作 JSON 数据。