0

我有一个网页,它会在向用户显示有用的内容之前下载大量的初步文件。有时,在标准连接上这可能需要 5 到 10 秒,这对用户来说等待非常令人沮丧。正是这个文件需要 90% 的时间来加载,所以我想做一些事情。

我已经阅读了一些有关缓存的内容...是否可以缓存此文件的数据,以便下次立即加载?

它从中获取信息的 URL 如下所示:getData.php?id=A5324DFJK4

此数据是通过 AJAX 调用获取的,该调用返回 XML 数据(然后由应用程序解析)。我使用 GET 的原因是拥有它以便可以缓存特定的 ID(我希望我这样做是对的,内容因 ID 而异,所以我认为缓存每个 ID 都是有意义的)。

缓存代码的实际平台是手机,完成后我使用PhoneGap构建应用程序。如果有人能启发我如何使用缓存来改善我的情况,我将不胜感激。

谢谢!

4

2 回答 2

1

您是对的,浏览器将为每个单独的 ID 缓存页面。您可以告诉浏览器您希望将此数据缓存多长时间。正如您所说的它是 XML,它可以包含在您现在在 getData.php 脚本中打印的 XML 的标头中。

例如:

header('Expires: ' . gmdate('D, d M Y H:i:s', strtotime('+2 days')) . ' GMT');
header("Content-type: text/xml");
header("Pragma: cache");
于 2013-08-07T10:13:26.720 回答
1

您可以在服务器上进一步处理数据并将其缓存在那里吗?您的问题描述确实没有太多内容。

缓存使用 PHP 创建的内容的示例 http://www.php.net/manual/en/function.header.php#61903

于 2013-08-07T10:09:01.150 回答