1

尝试实现 HTML5 的离线功能。在做了很多谷歌搜索之后,这就是我的代码的样子。mod_wsgi(这是一个 django 项目;使用插件部署在 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.types
text/cache-manifest manifest

\Python27\Lib\mimetypes.py
添加'.manifest': 'text/cache-manifest',types_mapdict

(将上述添加到 mimetypes.py 后,它开始适用于 android 4.0)

缓存清单
CACHE MANIFEST
CACHE:
index.html
MyHomeStuff.js

编辑
views.py`

def offlineApp(request):
    t = get_template('index.html')
    html = t.render(Context({'MEDIA_URL':'http://myDomain.com/site_media/'}))
    return HttpResponse(html)

EDIT2
是否需要使用任何特定的module/middleware来处理?text/manifestdjango

该应用程序在 chrome、opera 和其他桌面浏览器上运行正常;但在 android 2.x、iPhone 浏览器的飞行模式下不加载。但是它适用于 Android 4.0 浏览器!
可能是什么问题呢?请帮忙。

4

1 回答 1

0

在这里得到了谷歌组的答案..

本质上它告诉了这个:

当您提供离线 HTML5 时,您需要提供(至少)2 个页面——一个带有 html 的页面,以及一个包含清单的完全独立的第二个页面。清单文件的内容类型为 text/cache-manifest;您的 HTML 以普通的 text/html 内容类型提供。

于 2013-04-17T18:59:30.893 回答