什么是正确的mime-type类型的深奥语言?
我到处搜索,我甚至试图问查克诺里斯,但我在任何地方都找不到答案。
我为Brainfuck试过这些:
application/brainfuck
application/x-brainfuck
application/x+brainfuck
x-esoteric/x-brainfuck
chuck-norris-choice/brainfuck
x-you-lost-the-game/x-fuck-your-brain
42/++++++++[>++++[>++>+++>+++>+<<<<-]>+>+>->>+[<]<-]>>.>---.+++++++..+++.>>.<-.<.+++.------.--------.>>+.>++.
但他们似乎都没有工作。
答案 0 :(得分:5)
据我所知,没有'官方'媒体类型为brainfuck(Official types listed here)。您当然可以在没有正式注册类型的情况下自行编写,但在选择要使用的名称之前,您应该考虑一些事项。您需要的所有信息都在RFC2046中。我将在下面讨论相关部分。
据我所知,您可以选择的两个选项是text
和application
:
text
根据Section 3:
子类型“plain”特别表示不包含任何格式化命令或指令的纯文本。纯文本旨在“按原样”显示。除了支持指定的字符集外,不需要特殊的软件来获得文本的全部含义。
如果您打算显示数据而不是应用程序解释数据,我会使用它。
Section 4.1.4提到以下关于无法识别的子类型:
只要MIME实现知道如何处理字符集,就会将无法识别的“text”子类型视为子类型“plain”。
将顶级媒体类型设置为文本将确保不识别完整类型的兼容应用程序仍将数据呈现为文本。
application
如果您希望进一步解释或处理数据,则应使用应用程序顶级媒体类型。与上面的论点一样,如果您将数据标记为application
,那么接收它的任何程序都更有可能以合理的方式运行。
Section 4.5.3处理无法识别的应用类型:
预计将来会定义“应用程序”的许多其他子类型。 MIME实现必须至少将任何无法识别的子类型视为等同于“application / octet-stream”。
阅读相应的部分(Section 4.5.1),我们了解应用程序应如何处理八位字节流:
接收“application / octet-stream”实体的实现的建议操作是简单地提供将数据放入文件中,任何Content-Transfer-Encoding撤消,或者可能将其用作输入用户指定的过程。
如果在无法识别数据时这似乎是处理数据的最合理方式,那么application
适合您。
选择子类型要容易得多。 Section 6涵盖了实验性媒体类型:
以字符“X-”开头的媒体类型值是私有值,由同意系统通过共同协议使用。任何没有严格公共定义的格式都必须以“X-”前缀命名,公开指定的值不得以“X - ”开头。
所以你的子类型应该是X-brainfuck
。
您有两种选择:
text/X-brainfuck
application/X-brainfuck
如果您打算让应用程序将数据视为纯文本并显示它,请选择1.如果您打算解释或执行数据,请选择2.如果您不确定要发生什么,请选择2,因为默认的期望是应用程序会提示用户在无法识别类型时该怎么做。
答案 1 :(得分:2)
application/...
是一个适合文本文件的mime类型。 .bf
的一个普遍接受的MIME类型是text/x-brainfuck
。这是一种语言,而不是可执行文件。