pky*_*eck 3 html5 offline html5-appcache
我正在使用应用程序缓存使我的网站也脱机工作.
我的清单看起来像这样,并使用以下内容嵌入<iframe>:
CACHE:
favicon.ico
assets/css/style.css
assets/js/libs/zepto.js
assets/js/app.js
NETWORK:
*
FALLBACK:
/ offline.html
Run Code Online (Sandbox Code Playgroud)
当我切断互联网连接时,它按预期工作 - >所有内容都通过offline.html页面提供.
但刚才我发现每个404(例如服务器上从未存在的URL)也使用清单中的FALLBACK部分显示offline.html.
有没有办法区分离线(在这种情况下,offline.html是正确的选择)和服务器返回404(在这种情况下,我只是想显示404错误)?
如果原始请求,Appcache将FALLBACK ...
...导致重定向到具有另一个来源的资源(指示强制网络门户),或4xx或5xx状态代码或等效,或者是否存在网络错误
(来自http://www.whatwg.org/specs/web-apps/current-work/multipage/offline.html#changesToNetworkingModel)
不幸的是,当发生回退时,没有理由找出原因.您无法区分500,404,重定向或失败的连接.
这是一个hacky解决方法:
FALLBACK:
/connection-test.js connection-failed.js
/ offline.html
Run Code Online (Sandbox Code Playgroud)
您可以在offline.html页面中嵌入connection-test.js.connection-test.js loading表示用户有连接,connection-failed.js表示没有连接.
| 归档时间: |
|
| 查看次数: |
1530 次 |
| 最近记录: |