【问题标题】:manifest.json vs manifest.webmanifestmanifest.json 与 manifest.webmanifest
【发布时间】:2019-02-07 07:15:41
【问题描述】:

我正在使用 mongodb、Node.JS 和 PWA 开发应用程序。开发的第一步不知道manifest.json有什么区别 和manifest.webmanifest

【问题讨论】:

    标签: web-applications manifest progressive-web-apps


    【解决方案1】:

    没有大的区别,而不是命名。使用您喜欢的任何一个:"/manifest.json"href="/manifest.webmanifest"。只是不要忘记 MIME 类型在这两种情况下都必须是:application/manifest+json

    <link rel="manifest" href="/manifest.json">
    <link rel="manifest" href="/manifest.webmanifest">
    

    注意spec says 应该是manifest.webmanifest。后来它可能很重要,因为它正在大力开发中。

    更多信息请查看: W3CMDN

    【讨论】:

    • 在我提问之前,我已经看到了您发送的链接。问题是我无法理解它们的区别。
    • 据我了解,它正在开发中,他们考虑是否值得添加一些特定的扩展。例如,为什么我们有.css.html 文件,而它是通常的文本文件,为什么没有.txt?因为它更清晰可靠。我相信这里是同样的交易。 .webmanifest 仅用于说明应该在哪里使用,而语法将 100% 与 .json 相同。但是添加特定的扩展真的值得吗?它仍然不清楚,因为我们现在可以清楚地看到它可能会使一些开发人员感到困惑:)
    • 嗯,我认为它们有一些差异,正如你所说的那样令人困惑,但我不知道它们。
    • 我真的怀疑他们有。我相信你可以提供任何名称和扩展名,只要它应该与标题中的&lt;link rel="manifest" href="manifest.webmanifest"&gt; 匹配,并且应该是 JSON 格式。所以可以是&lt;link rel="manifest" href="myfile.mucustomextention"&gt;
    【解决方案2】:

    2019 年 11 月更新

    MDN (Mozilla Developer Network)中提到了区别:

    .webmanifest 扩展名在规范的媒体类型注册部分指定(清单文件的响应应返回 Content-Type: application/manifest+json)。浏览器通常支持带有其他适当扩展名的清单,例如 .json (Content-Type: application/json)。

    您可以阅读更多详细信息:Media Type Registration

    【讨论】:

      【解决方案3】:

      就像其他答案中提到的那样,两者没有太大区别。
      但是,根据webhint.io建议使用manifest.webmanifest

      manifest-file-extension 警告不要对web app manifest 文件使用非标准文件扩展名。

      虽然 .webmanifest 文件扩展名没有被规范强制执行,浏览器也不需要它,但使用它可以做到:

      这也显示为问题面板中 Microsoft Edge 浏览器开发工具中的提示(下面的屏幕截图)

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2021-05-19
        • 2015-01-10
        • 1970-01-01
        • 2019-09-27
        • 1970-01-01
        • 2013-02-09
        • 2019-08-06
        相关资源
        最近更新 更多