Javascript iPhone Web应用禁用缓存

Javascript iPhone Web应用禁用缓存,javascript,iphone,safari,web-applications,mobile-safari,Javascript,Iphone,Safari,Web Applications,Mobile Safari,我已经用PHP构建了一个iPhone网络应用程序。主(也是唯一)页面包括支持apple mobile web app和apple touch全屏元标记,以便在添加到主屏幕后可以全屏运行。但是,似乎每次我从主屏幕启动应用程序时,都会使用页面的缓存版本,而不是刷新页面(当然,我需要在启动时更新页面,这里不能使用Ajax-需要使用SSO phpCAS动态验证用户)。我没有使用任何清单文件,尝试添加关于缓存的元标记,但没有成功。有人知道怎么解决这个问题吗 谢谢您尝试过哪些元标记 <META HTT

我已经用PHP构建了一个iPhone网络应用程序。主(也是唯一)页面包括支持apple mobile web app和apple touch全屏元标记,以便在添加到主屏幕后可以全屏运行。但是,似乎每次我从主屏幕启动应用程序时,都会使用页面的缓存版本,而不是刷新页面(当然,我需要在启动时更新页面,这里不能使用Ajax-需要使用SSO phpCAS动态验证用户)。我没有使用任何清单文件,尝试添加关于缓存的元标记,但没有成功。有人知道怎么解决这个问题吗


谢谢

您尝试过哪些元标记

<META HTTP-EQUIV="CACHE-CONTROL" CONTENT="NO-CACHE">
<META HTTP-EQUIV="PRAGMA" CONTENT="NO-CACHE">

因此,如果页面在浏览器中,它可以给出保存到主屏幕的说明,如果从主屏幕运行,它将加载真实页面。

我知道当您包含清单文件时,主页会自动缓存,但我不认为这是在仅使用具有web app功能的…时发生的。您是否尝试过使用缓存清单文件并在“网络:”下列出您的页面以明确将其从该缓存方法中排除?如果不是这样,那一定是因为标题和那里的元信息。

谢谢你的帮助。是的,我试过你提到的元标记,但它仍在加载缓存。请注意,只有当标记apple mobile web app capable设置为YES(但我需要它,因为我希望web全屏运行)并且仅当我使用跳板上的图标时,才会发生这种情况。向URL中添加随机生成的令牌可以解决此问题,但这意味着重定向:因此,在Safari Mobile中,再也不可能为主页添加书签(添加令牌后会重定向到get paremeter…),如果你明白我的意思。。。最佳未经测试的版本(window.onload…)运行良好,非常棒!唯一不好的是你每次发布都要不断地修改它。我在你访问的页面上使用了一个iframe,它嵌入了一个页面,重定向到你想要向用户显示的实际页面。然后我让htaccess更改重定向到页面的页面,它将不会缓存htaccess,因此它可以完美地工作。
window.onload = function () {
   if (navigator.standalone) {
     document.location.href = 'http://your.com/whatever.php?randomjunk=1234')  }
}