6

我有一个 HTML5 webapp,它在通过 IIS 提供服务时运行良好,无需身份验证。

是使用 cache.manifest 文件。

无论是在 safari 中运行时,还是作为“添加到主屏幕”全屏应用程序时,一旦我更新服务器上的清单文件,应用程序就会更新。

当我打开除了 cache.manifest 之外的所有文件的身份验证时,我只会在 safari 浏览器中运行它时看到更新。

如果我将它添加到主屏幕,我无法让应用程序更新缓存。

如果我对服务器上的流量进行wireshark,我可以看到清单文件被毫无问题地获取,但清单文件中的所有文件都会遇到401 Unautorized错误。

知道如何解决这个问题吗?在 safari 浏览器中运行它正在工作..

非常感谢任何帮助。

4

1 回答 1

3

Safari 更了解 HTTP 基本身份验证,但 web.app(主屏幕 Web 应用程序处理程序,基本上是一个 UIWebView 包装器)没有那么全功能并且似乎不支持基本身份验证。

看来您可能需要使用服务器端解决方案来解决此问题,将身份验证密钥附加到文件名(例如 application.css? longhexkey)以绕过基本身份验证,或者使用更传统的登录表单(可能需要对您的应用进行重大更改)

Sencha 论坛上的相同问题:未回答:在 iOS 设备上离线使用后强制重新认证?

于 2013-01-23T00:49:17.090 回答