【问题标题】:What mime type should be used for squashfs files?squashfs 文件应该使用什么 mime 类型?
【发布时间】:2018-07-03 01:42:32
【问题描述】:

在我的 API 中,我需要提供不同格式的文件/目录资源(称为thing),包括 tar.gz 和 squashfs 文件。我一直在查看“官方”mime 类型,看起来 application/x-compressed-tar 适合 thing.tar.gz 文件。

但是如果thing 是使用mksquashfs 创建的呢?我不确定供应商特定的 mime 类型是否是答案,因为我认为没有供应商可以指定。

另外,mksquashfs 的输出通常是一个压缩文件(默认是 gzip)。所以我可以使用application/x-gzip,但由于有多个压缩选项,我不想知道使用了哪种压缩,因为 API 专注于提供先前创建的 squashfs thing 而不是创建squashfs 按用户要求进行特定压缩。

只制作自己的 mime 类型可以吗?

  • application/x-squashfs?
  • application/x-sqsh?
  • application/vnd.???.squashfs?
  • application/vnd.???.sqsh+gzip?

【问题讨论】:

    标签: rest mime-types


    【解决方案1】:

    vnd. 命名空间是为已注册 供应商类型保留的,所以不要使用它(或者在使用它之前通过 IANA 注册此类型的漫长而艰巨的过程)。从理论上讲,注册它可能很有用,而且您不必真的是“供应商”(尽管我认为 Linux 或 SquashFS 社区可以被命名为负责的管理实体)。

    x- 前缀现在也被劝阻(并被 x. 前缀包含)并且无论如何从未真正提供良好的语义(要么你有一个没有人指定但很多人知道的“非官方标准”,或者你有一个未知的无证事物,根本无助于指定 application/octet-stream 之外的事物)。

    如果您想按部就班,又不想通过 IANA 定义 MIME 类型(尽管他们定义了一个轻量级流程来鼓励这样做),那么久经考验的 application/octet-stream 仍然适用于随机字节流。

    如果您确实想进行轻量级注册,我的建议是像 application/filesystem 后缀像 +ext2+ext3+dmg(适用于 Mac 图像)、+ntfs 等没有多想。

    【讨论】:

    • 谢谢。我觉得无论我走哪条路,我都在创造一些新的“特别”的东西。
    • 类型的 point 是它们传达某种标准化或至少记录在案的东西,所以如果你不想这样做,只需使用它们的泛型类型已经为此目的作出规定。在许多情况下,可选的文件名参数实际上也可以很好地向人类读者传达预期目的。
    • 我认为application/filesystem+sqsh 可能是获胜的建议。我们将看看代码审查者是怎么说的。 :)
    猜你喜欢
    • 2023-04-08
    • 1970-01-01
    • 1970-01-01
    • 2013-02-13
    • 2012-04-16
    • 2011-07-04
    • 1970-01-01
    • 1970-01-01
    • 2012-02-27
    相关资源
    最近更新 更多