2

我正在制作一个网站,用户可以在其中说出他想要缓存的项目。基于此,生成清单文件。通过这样做,用户在离线时仍然可以浏览网站。这在谷歌浏览器中一切正常。但在 iPad 上,它不能正常工作。有时事情会被缓存,有时不会,甚至我访问的页面也不会。

我们整个上午都在用两台 iPad 进行测试,但我们无法在两台 iPad 上得到相同的结果。即使我们完全一样,我们有时也会得到不同的结果。

所以我们做什么:

  • 开启 WiFi
  • 浏览网站
  • 进行一些设置,以便将一些页面/图像/...添加到清单文件中
  • 关闭 WiFi
  • 返回 Safari 刷新/浏览应缓存的页面。

有时在一台 iPad(这是 iPad 1)上它完全可以正常工作,但有时它根本不工作。在另一台 iPad(这是 iPad 2)上,它永远不会完全正常工作。只是一些随机的结果。

当我们完全关闭safari,然后清除缓存,然后执行下载和缓存东西的整个过程时,看起来结果也有所不同......

有人可以帮我解决这个问题吗?此刻真是让人头疼……:(

4

4 回答 4

2
  1. 打开网络服务器 (IIS)
  2. 选择网站
  3. 打开 MIME 类型
  4. 添加或编辑到text/cache-manifest
  5. 在命令提示符处重置 iisiisreset

这个对我有用。

于 2012-03-22T14:30:42.847 回答
0

看起来问题与应用程序缓存没有任何关系。不知何故,cookie/我动态构建清单文件的方式存在问题。

于 2011-10-03T15:51:38.387 回答
0

我想稍微回应一下 Pieter-Paulus Vertongen,我在 Windows 托管方面也有类似的经历。

根据 Safari 中的调试控制台,清单文件的 mime 类型被误读,因此没有下载任何内容。

我将所有文件(包括 .htaccess 文件)复制到 linux 服务器上,而没有更改文件中的任何内容……然后缓存工作得很好。

所以是的,这可能是文件托管位置的问题。使用调试控制台和 Jonathan Stark 的代码找出:

http://jonathanstark.com/blog/debugging-html-5-offline-application-cache?filename=2009/09/27/debugging-html-5-offline-application-cache/

于 2013-06-19T21:19:48.037 回答
0

我在 ipad 缓存方面也遇到了一些问题。

  1. 由于 Windows 托管,未正确设置清单文件的 MIME 类型。Windows 服务器上的标准 MIME 类型是“application/x-ms-manifest”。这是在 ClickOnce 应用程序出现时创建的。在 safari 上工作所需的 MIME 类型是:“text/cache-manifest”

  2. ipad 上的缓存太小(您应该会收到放大它的警告)

  3. Ipad需要时间!我注意到当您看到所有资产或网站“加载”时,缓存没有填满。在将网站放置到主屏幕之前,给它两倍的正常加载时间。

  4. 缓存的缓存 :) iPad 仅在服务器上的修改日期更改时重新加载文件。因此,当您真的想测试时,请清除 iPad 上的所有缓存,删除主屏幕上的链接并重新上传所有文件。

结论:耗时!

提示:在桌面或 iPad 上的 safari 中打开调试控制台。如果您做错了什么或者它是 iPad 上的缓存问题,它给出了一个公平的想法。

于 2011-09-26T11:33:11.377 回答