问题标签 [application-cache]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
4529 浏览

android - 应用程序缓存在 android 设备中不起作用(在 chrome 浏览器上运行良好)

我正在尝试使用应用缓存来批准性能。

我在各个站点得到了指导。(例如http://xguru.net/621 ...)

制作 cache.man 文件,将 mime-type 设置为 text/cache-manifest。

问题是...

它在谷歌 chrome 浏览器上运行良好,但在我的 android 手机上不起作用。

我在 ICS 和 Gingerbread 进行了测试。

这是清单文件。

然后,我像这样设置我的 webview。

(我将cacheMode更改为LOAD_NORMAL、NO_CACHE,但并没有什么不同。)

要查看缓存状态,我使用此站点。 http://jonathanstark.com/blog/2009/09/27/debugging-html-5-offline-application-cache/

最后,这是我在我的安卓手机上看到的日志。

图像已下载,但我们在最后一行得到错误。所以它总是处于未缓存状态。

我想问题出在 webview 设置或 android 应用程序上。但我无法处理它。

给我一个使用应用程序缓存的提示..请...

0 投票
1 回答
2693 浏览

html - AppCache:资源不会重新加载

当我更新我的清单并加载页面时,我检查了开发人员工具我已更改的脚本。它不在那里。我总是需要清除浏览器缓存才能加载它。我有一个用于更新缓存的侦听器:

0 投票
1 回答
1731 浏览

html - AppCache 文件夹中的所有图像

我有一个从 Web 服务获取数据(包括图像)的 Web 客户端。

我已经能够缓存 Web 客户端,因此即使他/她处于离线状态,用户也可以使用它。但是我无法缓存图像。

这是我的清单中的内容:

任何想法如何缓存该文件夹中的所有图像?我使用的是完整的 URL,因为我的客户有不同的 URL。(http://192.168.20.50:8080/client)

0 投票
2 回答
337 浏览

html - 有没有办法推迟 HTML5 清单检查?

鉴于有一种方法可以直接使用 window.applicationCache.update() 调用更新,有没有什么方法可以省略加载页面时浏览器自动执行的更新?

我一直在 Google Chrome 中尝试离线模式,到目前为止,似乎 1)如果指定了清单文件,它将被加载,并且我无法在 JavaScript 中做任何事情来阻止它。2)如果清单文件发生了变化,整个缓存都将被更新,我无法阻止它。

以我的经验,window.applicationCache.abort() 无论何时调用它都不起作用。我尝试在 javascript 的第一行以及检查和下载事件中调用它,但它总是下载所有内容。这可能与时间有关,因为文件很小并且加载速度非常快。

0 投票
1 回答
1584 浏览

android - Android 设备上的 AppCache

我在安卓手机上试用 appCache 网站时遇到了这个奇怪的问题。我已经在 Froyo 2.2 Android 设备上对其进行了测试。我正在使用这个 AppCache 演示http://people.opera.com/shwetankd/demos/2/index.htm在 Android 手机上测试 AppCache 的功能

我已经使用 Dolphin Browser 对其进行了测试,并且可以正常工作。当我在 Android 的默认浏览器中测试它时出现问题。

所以我访问了该页面,然后关闭了我的互联网连接。然后我重新加载页面,它会显示类似页面未找到的消息,并在消息上附加 URL。事情是当我单击错误消息中的同一个 URL 时,它会加载缓存的页面。当我在页面上新建标签时也是如此,它可以工作。

它只是无法访问页面->关闭互联网->重新加载现有页面。

有任何想法吗?或者它只是我的测试设备?谢谢。

0 投票
2 回答
15384 浏览

javascript - 通过 javascript 清除和更新 html5 应用程序缓存

我经常遇到这个问题,其中一些用户的应用程序缓存损坏(HTML 5)。

每次有新版本时,我都会更新清单文件,但有时有些用户会收到损坏的应用程序缓存。

在这种情况下,我想完全清除他们的应用程序缓存中的内容并从服务器加载所有新内容。

有没有办法使用Javascript?

0 投票
1 回答
570 浏览

html - HTML5 App Cache 在 Firefox 11 中失败 - 适用于 Chromium

我已经在 Chromium 下成功测试了 HTML5 Application Cache。例如:

上面的 URL 呈现一个 HTML5 文件。当我使用基于 cookie 的身份验证保护它时,Firefox 11 失败;我收到一个我找不到描述的错误,但我认为是由于 HTTP 重定向响应造成的。如果我公开 URL,它会正确缓存它。

另一方面,Chromium 18在这两种情况下都能正确处理缓存。恐怕 Firefox 在发出缓存请求时没有发送 cookie 信息。

任何的想法?谢谢!

PD。我忘了说我正在运行 64 位应用程序。

0 投票
2 回答
422 浏览

html - HTML5 Cache 显示带有更多内容的奇怪错误

我对 HTML5 Web 存储和应用程序缓存正在慢慢地但肯定会完全发疯。

这是我的例子: http ://daviddarx.com/stuffs/work/custom/54/

缓存清单有效并在http://manifest-validator.com/上进行了测试:http : //daviddarx.com/stuffs/work/custom/54/cache.manifest

由于它不起作用,我采取了一个非常简单的工作示例,然后尝试逐步添加我的部分代码和数据,添加很少,然后我再次测试它。

当我从一个简单的例子开始时,一切都很好。如果我将 iPhone 置于平面模式,则在启动网站时会收到一条离线消息,但随后我可以查看结果。

当我添加一些资产(页面中的 HTML 代码、1-2 张图片等)时,它仍然可以正常工作。

如果我然后添加更多资产(例如,css 和所有相关的图像),问题就开始了......如果我进入平面模式然后打开页面,我会收到正常消息(当它是工作),然后是另一条消息,要求我重试或取消。如果我取消,网站就不会显示并且应用程序关闭,如果我按下重试按钮,我会一次又一次地收到相同的消息......

我真的不知道该怎么办。每次我在测试之前验证我的缓存清单,每次我更改 URL 以确保一切都被重置。

这是否与缓存文件的重量有关?大小或文件有限制吗?

另一句话:在测试之前,我总是在我的计算机上的控制台中检查我的页面,以确保这不是一个明显的问题。事实上,每次尝试都在桌面浏览器上成功,加载了所有资产。

你知道那可能来自哪里吗?


编辑:我又做了很多测试,但仍然无法正常工作。

以下是情况的摘要:

  1. 这是我正在测试的版本:http: //daviddarx.com/stuffs/work/custom/61/

2. 这是我的缓存清单:http ://daviddarx.com/stuffs/work/custom/61/manifest.appcache 根据http://manifest-validator.com/完全有效。

3.当我在chrome(桌面)上加载页面并在控制台上显示时,一切正常。所有元素都被缓存了,如果我刷新,缓存就可以了。

4. 当我在桌面 chrome 上加载页面并查看网络面板时,我可以看到所有内容都是从缓存中加载的。没有任何丢失的文件。

5. 当我断开我的台式电脑与任何互联网的连接时,它就可以工作了!如果我在没有任何连接的情况下使用 chrome 浏览网站,我可以显示页面,一切都很好,因为我希望它会出现在我的 Iphone 上。

6. 当我第一次使用我的 iPhone 并访问该网站时,一切正常。移动 Safari 的控制台没有任何错误。如果我打开“平面模式”并返回 safari,我可以显示我所在的页面(我以前无法实现)。但是,如果我尝试更改页面,它只会警告我“无法打开页面”,然后取消请求。我只能停留在当前页面。

在我的台式电脑上一切都很完美,但在我的 Iphone 上却不行。

你有什么主意吗?你能在你的桌面和iphone浏览器上试试吗?

0 投票
0 回答
2335 浏览

html - W3C Widgets 死了吗?

最近有人指导我查看 W3C 小部件规范:

http://www.w3.org/TR/widgets/

开发人员可以通过浏览器的应用程序缓存使 Web 应用程序脱机工作。我曾问过用户应该如何知道他们可以离线使用某些网站,这是该人提出小部件规范的时候。将应用程序的包装与其离线存储能力分开是有意义的。然而,在谷歌搜索和阅读小部件之后,我找不到任何关于该主题的最新文章(大多数文章似乎来自 2010 年左右)。最终我找到了 Opera 的 SDK,但一开始有一条消息表明他们正在删除该功能:

从 Opera 12 开始,Opera Widgets 将对新用户关闭,并在以后的版本中完全删除。

来源:http ://dev.opera.com/articles/view/creating-your-first-opera-widget/

W3C 小部件是一种死技术吗?如果是这样,是否有任何跨浏览器技术正在开发用于 Web 应用程序的打包?我很好奇,因为我认为离线存储很有趣,但不知道用户如何知道即使他们没有互联网连接,他们也可以浏览到特定的 URL 并让它工作,除非浏览器告诉他们他们安装了哪些应用程序(或者除非每个支持离线存储的网站都向他们解释过)。

0 投票
2 回答
1097 浏览

html - 带有动态页面的 HTML5 AppCache

我有一个名为 pages.php 的 php 文件,它返回由查询参数指定的页面。用户从下拉列表中选择一个数字,然后将 ajax 请求发送到 pages.php,该数字如下:

页数是动态的。我正在使用 HTML5 的 AppCache 来缓存索引页面,但是如何让浏览器缓存 ajax 请求。将 pages.php 添加到清单文件中只会缓存没有页面的响应。但它会缓存任何带有页码的请求。我想在清单文件中做这样的事情:

我正在尝试获取它,以便用户在离线时可以访问他们之前查看过的页面。AppCache 似乎不适合使网站离线(仅使静态资源加载更快),我应该使用其他一些功能吗?