在我的API中,我需要提供不同格式的文件/目录资源(称为thing
),包括tar.gz和squashfs文件。我一直在关注"官方" mime类型看起来application/x-compressed-tar
适用于thing.tar.gz
文件。
但如果使用thing
创建mksquashfs
呢?我不确定特定于供应商的mime类型是否是答案,因为我认为没有供应商可以指定。
此外,mksquashfs
的输出通常是压缩文件(默认为gzip)。所以我可以使用application/x-gzip
,但由于有多种压缩选项,我不想知道使用了哪种压缩,因为API专注于提供先前创建的squashfs {{1}而不是根据用户的要求创建具有特定压缩的squashfs。
可以制作自己的mime类型吗?
thing
?application/x-squashfs
?application/x-sqsh
?application/vnd.???.squashfs
?答案 0 :(得分:0)
vnd.
命名空间是为注册的供应商类型保留的,因此请不要使用它(或者在您可以使用之前经历与IANA注册此类型的漫长而艰巨的过程用它)。从理论上讲,注册它可能很有用而且您不必真正成为"供应商" (尽管我认为Linux或SquashFS社区可以被命名为负责任的管理实体)。
现在也不鼓励x-
前缀(并由x.
前缀包含)并且从未真正提供过良好的语义(要么你有一个"非官方标准"没有人指定但是很多人都知道,或者你有一个未知的未记载的东西,它根本不能指明application/octet-stream
以外的东西。
如果您想阅读本书,并且不想通过IANA定义MIME类型(尽管他们定义了一个轻量级的流程来鼓励这一点),那么久经考验的application/octet-stream
仍然存在适用于随机字节流。
如果您确实想要进行轻量级注册,请使用application/filesystem
之类的后缀,例如+ext2
,+ext3
,+dmg
(对于Mac图像),{{1等等是我的建议,但这并没有太多考虑它。