gpt4 book ai didi

html - Grails如何支持HTML5离线模式?

转载 作者:行者123 更新时间:2023-12-02 15:26:28 26 4
gpt4 key购买 nike

我正在编写一个Grails / GSP应用程序,该应用程序在不存在网络时需要脱机运行。我阅读了以下有关HTML5 Offline / AppCache的文章,这些文章非常有帮助:

  • HTML5 Rocks;和
  • Dive into HTML5

  • 总结一下( tl;dr),我需要在每个页面的 manifest元素中定义一个 <html>属性,如下所示:
    <html manifest="myapp-cache.manifest">
    ...
    </html>

    其中 myapp-cache.manifest是“缓存 list ”文件的名称,该文件指定了脱机/缓存行为,可能看起来像这样:
    CACHE MANIFEST
    NETWORK:
    *
    CACHE:
    index.html
    somethingCool.html
    myimage.png
    myapp.css

    这里的问题是,使用Grails的 我将没有要缓存的HTML文件。 实际上,我可能有一个 index.gspsomethingCool.gsp,但是它们表示经过预处理的HTML,并且永远不会作为HTML文档存在。而且我无法在缓存 list 中指定GSP,因为GSP可以(并且不应)直接从客户端获取。

    当我们开始重用GSP时,事情变得更加复杂,例如 header.gspfooter.gsp,标记库等。

    所以我问: Grails是否支持HTML5离线版? 如果可以,如何以及以什么身份(文档在哪里)?如果不是,是否有任何办法迫使Grails脱机兼容?还是Grails无法使用此HTML5功能?

    更新资料

    也许可以通过URL映射以某种方式实现?例如,也许有一种方法可以使Grails将请求从 http://myapp.example.com/fizzbuzz.html映射到 http://myapp.example.com/fizzbuzz,然后可以提示Grails调用正确的 Controller 操作并呈现正确的GSP?

    最佳答案

    您的陈述“我将没有要缓存的HTML文件”是错误的。 Grails是一个服务器端框架,尽管您在服务器端使用GSP,标记库等,但所有客户端(浏览器)所看到的都是纯HTML。

    因此,最好缓存.gsp,因为所有浏览器都可以获取,而缓存是Grails提供的HTML。不要因扩展名而感到困惑!脱机时,浏览器将以与.html相同的方式从AppCache中获取HTML。

    AppCache是​​一种客户端技术,因此我怀疑一般是否有关于服务器端技术的特别文档,尤其是Grails,因为它对任何服务器端技术都起作用。

    @sneeb Grails可以提供您希望的任何格式的内容,包括HTML,JSON,XML等。因此,Grails支持任何类型的内容,包括HTML5。

    关于html - Grails如何支持HTML5离线模式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26824184/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com