321_MediaType Media Type 是什么

本文详细介绍了MediaType的概念及其在网络协议中的应用,包括常见的类型、子类型及参数等,并列举了一系列常用的MediaType示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

 

 

 

 


MediaType是什么


MediaType在网络协议的消息头里面叫做Content-Type
使用两部分的标识符来确定一个类型


所以我们用的时候其实就是为了表明我们传的东西是什么类型


比如


application/json:JSON格式的数据,在RFC 4627中定义
application/javascript:JavaScript,在RFC 4329中定义但是不被IE8以及之前的版本支持




audio/mp4:MP4音频
audio/mpeg:MP3 或者MPEG音频,在RFC 3003中定义




image/jpeg:JPEG 和JFIF格式,在RFC 2045 和 RFC 2046中定义
image/png:png格式,在 RFC 2083中定义




text/html:HTML格式,在RFC 2854中定义
text/javascript :JavaScript在已经废弃的RFC 4329中定义,现在推荐使用“application/javascript”。然而“text/javascript”允许在HTML 4 和5 中使用。并且与“application/javascript”不同,它是可以跨浏览器支持的。




等等
记住常用的:

文件:

text/css

text/html

text/javascript

text/plain

图片:

image/bmp

image/gif

image/jpeg

image/png

 

Json:

application/json

 

音频:

audio/mpeg

video/mpeg

audio/ogg

video/ogg

 

 

 

 

Media Type

Media Type (以前叫 MIME Type) 是一个由两部分组成的标识符,用于在网络上传入文件格式以及格式内容。The Internet Assigned Numbers Authority(IANA) 是这些分类的标准化以及发布的官方机构。Media Type 最初是在1996年11月的Request for Comments 2045 中定义的。作为MIME (Multipurpose Internet Mail Extensions) 规范的一部分,用于表示电子邮件内容和附件的类型。Media Type也被用在一些互联网协议,例如HTTP,或者文件格式,例如HTML。

 

命名Naming

Media Type 由类型和子类型组成,子类型进一步构成一个树。

当前注册的类型有:应用程序、音频、示例、字体、图像、消息、模型、多部件、文本和视频。

例如,一个HTML文件可能被指定为text/HTML;charset=utf-8

在这个例子中,html是子类型,charset是可选参数,表示字符编码。

子类型通常由媒体格式组成,但根据注册树中的不同规则,它可以或必须包含其他内容,如树前缀、生产者、产品或后缀。

类型、子类型和参数名称不区分大小写。参数值通常是大小写敏感的,但根据预期的用途,可以用大小写不敏感的方式解释。

 

常见

    application/javascript

    application/json

    application/x-www-form-urlencoded

    application/xml

    application/zip

    application/pdf

    application/sql

    application/graphql

    application/ld+json

    application/msword (.doc)

    application/vnd.openxmlformats-officedocument.wordprocessingml.document(.docx)

    application/vnd.ms-excel (.xls)

    application/vnd.openxmlformats-officedocument.spreadsheetml.sheet (.xlsx)

    application/vnd.ms-powerpoint (.ppt)

    application/vnd.openxmlformats-officedocument.presentationml.presentation (.pptx)

    application/vnd.oasis.opendocument.text (.odt)

    application/zstd (.zst)

    audio/mpeg

    audio/ogg

    multipart/form-data

    text/css

    text/html

    text/xml

    text/csv

    text/plain

    image/png

    image/jpeg

    image/gif

application/vnd.api+json

 

 

 

注册树

所有Media Type都应该使用IANA注册程序进行注册。为了提高Media Type注册过程的效率和灵活性,可以在注册树中注册不同结构的子类型,并使用树前缀来区分它们。目前创建了以下树:standard(无前缀)、vendor (vnd)。前缀),个人或vanity(prs。前缀),未注册(x.前缀)。这些注册树是在1996年11月首次定义的(已淘汰的RFC 2048 -目前的RFC 6838)。新的注册树可能由IETF标准创建,用于著名的永久性组织(如科学协会)的外部注册和管理。

 

 

标准树

标准树不使用树前缀。

type "/" subtype ["+" suffix] *[";" parameter]

例如:application/javascript, image/png.

标准树中的注册必须与IESG直接批准的IETF规范相关联,或者由IANA认可的与标准相关的组织注册。

 

 

Vendor tree

The vendor tree includes media types associated with publicly available products. It uses the vnd. tree prefix:[1]

 

    type "/" "vnd." subtype ["+" suffix] *[";" parameter]

 

Examples: application/vnd.ms-excel, application/vnd.oasis.opendocument.text.

 

The terms "vendor" and "producer" are considered equivalent in the context. Industry consortia as well as non-commercial entities can register media types in the vendor tree. A registration in the vendor tree may be created by anyone who needs to interchange files associated with some software product or set of products. However, the registration belongs to the vendor or organization producing the software that employs the type being registered, and that vendor or organization can at any time elect to assert ownership of a registration done by a third party.

Personal or vanity tree

 

The personal or vanity tree includes media types associated with non publicly available products or experimental media types. It uses the prs. tree prefix:

 

    type "/" "prs." subtype ["+" suffix] *[";" parameter]

 

Examples: audio/prs.sid, image/prs.btif.

Unregistered tree

 

The unregistered tree includes media types intended exclusively for use in private environments and only with the active agreement of the parties exchanging them. It uses the x. tree prefix:

 

    type "/" "x." subtype ["+" suffix] *[";" parameter]

 

Examples: application/x.foo, video/x.bar.

 

Media types in this tree cannot be registered. According to RFC 6838 (published in January 2013), any use of types in the unregistered tree is strongly discouraged. In addition, subtypes prefixed with x- or X- are no longer considered to be members of this tree.

 

According to obsoleted RFC 2048 (published in November 1996)—it should rarely, if ever, be necessary to use unregistered types, and as such use of any x., x- or X- prefixes is discouraged. Obsoleted RFC 1590 (published in September 1993) stated that the use of the x- or X- prefix may be used for unregistered subtypes.

 

Media types that have been widely deployed (with a subtype prefixed with x- or X-) without being registered, should be, if possible, re-registered with a proper prefixed subtype. If this is not possible, the media type can, after an approval by both the media types reviewer and the IESG, be registered in the standards tree with its unprefixed subtype.

 

 

后缀Suffix

Suffix is an augmentation to the media type definition to additionally specify the underlying structure of that media type, allowing for generic processing based on that structure and independent of the exact type's particular semantics. Media types that make use of a named structured syntax should use the appropriate IANA registered "+"suffix for that structured syntax when they are registered. Unregistered suffixes should not be used (since January 2013). Structured syntax suffix registration procedures are defined in RFC 6838.

 

The +xml suffix has been defined since January 2001 (RFC 3023), and was formally included in the initial contents of the Structured Syntax Suffix Registry along with +json, +ber, +der, +fastinfoset, +wbxml, and +zip in January 2013 (RFC 6839). Subsequent additions include +gzip, +cbor, +json-seq, and +cbor-seq.

 

 

.aac AAC audio audio/aac

.abw AbiWord document application/x-abiword

.arc Archive document (multiple files embedded) application/x-freearc

.avi AVI: Audio Video Interleave video/x-msvideo

.azw Amazon Kindle eBook format application/vnd.amazon.ebook

.bin Any kind of binary data application/octet-stream

.bmp Windows OS/2 Bitmap Graphics image/bmp

.bz BZip archive application/x-bzip

.bz2 BZip2 archive application/x-bzip2

.csh C-Shell script application/x-csh

.css Cascading Style Sheets (CSS) text/css

.csv Comma-separated values (CSV) text/csv

.doc Microsoft Word application/msword

.docx Microsoft Word (OpenXML) application/vnd.openxmlformats-officedocument.wordprocessingml.document

.eot MS Embedded OpenType fonts application/vnd.ms-fontobject

.epub Electronic publication (EPUB) application/epub+zip

.gz GZip Compressed Archive application/gzip

.gif Graphics Interchange Format (GIF) image/gif

.htm

.html HyperText Markup Language (HTML) text/html

.ico Icon format image/vnd.microsoft.icon

.ics iCalendar format text/calendar

.jar Java Archive (JAR) application/java-archive

.jpeg

.jpg JPEG images image/jpeg

.js JavaScript text/javascript

.json JSON format application/json

.jsonld JSON-LD format application/ld+json

.mid

.midi Musical Instrument Digital Interface (MIDI) audio/midi audio/x-midi

.mjs JavaScript module text/javascript

.mp3 MP3 audio audio/mpeg

.mpeg MPEG Video video/mpeg

.mpkg Apple Installer Package application/vnd.apple.installer+xml

.odp OpenDocument presentation document application/vnd.oasis.opendocument.presentation

.ods OpenDocument spreadsheet document application/vnd.oasis.opendocument.spreadsheet

.odt OpenDocument text document application/vnd.oasis.opendocument.text

.oga OGG audio audio/ogg

.ogv OGG video video/ogg

.ogx OGG application/ogg

.opus Opus audio audio/opus

.otf OpenType font font/otf

.png Portable Network Graphics image/png

.pdf Adobe Portable Document Format (PDF) application/pdf

.php Hypertext Preprocessor (Personal Home Page) application/php

.ppt Microsoft PowerPoint application/vnd.ms-powerpoint

.pptx Microsoft PowerPoint (OpenXML) application/vnd.openxmlformats-officedocument.presentationml.presentation

.rar RAR archive application/x-rar-compressed

.rtf Rich Text Format (RTF) application/rtf

.sh Bourne shell script application/x-sh

.svg Scalable Vector Graphics (SVG) image/svg+xml

.swf Small web format (SWF) or Adobe Flash document application/x-shockwave-flash

.tar Tape Archive (TAR) application/x-tar

.tif

.tiff Tagged Image File Format (TIFF) image/tiff

.ts MPEG transport stream video/mp2t

.ttf TrueType Font font/ttf

.txt Text, (generally ASCII or ISO 8859-n) text/plain

.vsd Microsoft Visio application/vnd.visio

.wav Waveform Audio Format audio/wav

.weba WEBM audio audio/webm

.webm WEBM video video/webm

.webp WEBP image image/webp

.woff Web Open Font Format (WOFF) font/woff

.woff2 Web Open Font Format (WOFF) font/woff2

.xhtml XHTML application/xhtml+xml

.xls Microsoft Excel application/vnd.ms-excel

.xlsx Microsoft Excel (OpenXML) application/vnd.openxmlformats-officedocument.spreadsheetml.sheet

.xml XML application/xml if not readable from casual users (RFC 3023, section 3)

text/xml if readable from casual users (RFC 3023, section 3)

.xul XUL application/vnd.mozilla.xul+xml

.zip ZIP archive application/zip

.3gp 3GPP audio/video container video/3gpp

audio/3gpp if it doesn't contain video

.3g2 3GPP2 audio/video container video/3gpp2

audio/3gpp2 if it doesn't contain video

.7z 7-zip archive application/x-7z-compressed

 

 

 

 

 

总之,记住最常用的

文件:

text/css

text/html

text/javascript

text/plain

图片:

image/bmp

image/gif

image/jpeg

image/png

 

Json:

application/json

 

音频:

audio/mpeg

video/mpeg

audio/ogg

video/ogg

 

 

 

 

 

 

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值