我已经在iPhone的web应用程序中实现了应用程序缓存,它似乎在移动Safari和我的桌面iMac上都能工作。
使用iOS4,Safari5.0,MacOS X 10.6.4。
我正在使用Safari中的Webkit开发工具来调试它。
现在困扰我的是,当我启用调试器并运行它时,调试器控制台会报告一个错误:
“加载资源失败:无法显示callButton24C.png”
png文件是我在应用程序中使用的文件,或者至少那个是我使用的文件。我无法确定代码的哪一部分触发了错误。
最初,我发现了一些资源文件的错误,因为我指向了错误的目录。我使用的是相对url,我刚刚清理了我的文件夹布局,其中包括将主html文件移到应用程序文件夹的顶层,这需要将图像url从“../ image /.”中更改。“图片/.”在我的.js文件和html文件中,一切都很好。
这一切都解决了,但我开始注意到上面的错误持续存在,甚至这个应用程序似乎工作正常-我已经收到了这个或相关的错误投诉,因为我通过整理的网址,需要调整后,我的文件夹重新安排。
我试着复制应用程序文件夹,并从那里运行它-同样的事情。
然后,我对文件的名称和指向它的所有url做了一个小小的更改,在通过缓存更新过程工作之后,它又开始工作了,但是我仍然得到了相同的消息,即旧的图像文件名。
我通过文件夹中的所有文件进行搜索,查找对旧名称的任何引用--没有。
我告诉Safari清理它的缓存。仍然会收到错误信息。
这可能在应用程序缓存中吗?有什么办法可以肯定地清除它吗?
该应用程序似乎正在工作,但我想知道是怎么回事。我是否可以安全地忽略这条信息,或者它是否表明了什么东西可能会让我在某些时候绊倒?
发布于 2010-07-04 08:58:00
6.6.7到期的应用程序缓存 作为一般规则,用户代理不应过期应用程序缓存,除非是根据用户的请求,或者是在长期未使用之后。。 应用程序缓存和cookie在隐私方面也有类似的含义(例如,如果站点在提供缓存时能够识别用户,那么它可以在缓存中存储可用于cookie复活的数据)。因此,鼓励实现者以与HTTP相关的方式公开应用程序缓存,允许将缓存与cookie和其他特定于源的数据一起删除。 例如,用户代理可以具有“特定于删除站点的数据”功能,它可以同时清除所有cookie、应用程序缓存、本地存储、数据库等。
https://stackoverflow.com/questions/3174202
复制相似问题