尝试实现HTML5的离线功能。在谷歌上搜索了很多之后,我的代码就是这样的。(这是一个django项目;使用mod_wsgi
插件部署在apache2.2中)
HTML
`
<!DOCTYPE HTML>
<html manifest="{{MEDIA_URL}}cache.manifest">
<head>
<meta charset="utf-8">
<title>MyHomeStuff</title>
<script type="text/javascript" src="{{MEDIA_URL}}MyHomeStuff.js" ></script>
<script></script>
</head>
<body>
.............
</body>
</html>
`
Apache conf\mime.typestext/cache-manifest manifest
\Python27\Lib\mimetypes.py
将'.manifest': 'text/cache-manifest',
添加到types_map
dict 中
(上面添加了mimetypes.py,它开始为android 4.0工作)
缓存清单CACHE MANIFEST
index.html
MyHomeStuff.js
module/middleware
编辑:
视图.py`
def offlineApp(request):
t = get_template('index.html')
html = t.render(Context({'MEDIA_URL':'http://myDomain.com/site_media/'}))
return HttpResponse(html)
编辑2
是否需要使用任何特定的text/manifest
来处理CCD_12中的django
该应用程序在chrome、opera和其他桌面浏览器上运行正常;但在安卓2.x、iPhone浏览器的飞行模式下不会加载。然而,它适用于Android 4.0浏览器
可能是什么问题?请帮忙。
从谷歌小组那里得到了答案。。
从本质上讲,它告诉了这一点:
当您提供离线HTML5时,您需要提供(至少)2个页面——一个包含html的页面,以及一个完全独立的第二个包含清单的页面。清单文件具有文本/缓存清单的内容类型;您的HTML使用普通的text/HTML内容类型。