321_MediaType Media Type 是什么

321_MediaType Media Type 是什么MediaType是什么MediaType在网络协议的消息头里面叫做Content-Type使用两部分的标识符来确定一个类型所以我们用的时候其实就是为了表明我们传的东西是什么类型比如application/json:JSON格式的数据,在RFC4627中定义application/javascript:JavaScript,在RFC4329中定义但是…

大家好,又见面了,我是你们的朋友全栈君。

 

 

 

 

 

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

 

 

 

 

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/141212.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 您的计算机无法访问dota2服务器,提示“已连接至DOTA2游戏协调服务器,正在登陆中”该如何解决?…「建议收藏」

    您的计算机无法访问dota2服务器,提示“已连接至DOTA2游戏协调服务器,正在登陆中”该如何解决?…「建议收藏」《DOTA2》游戏,是一款RPG有些,在国内的玩家有很多,最近有位小伙伴打算在Win10电脑上与朋友一起玩《DOTA2》,却一直提示“已连接至DOTA2游戏协调服务器,正在登陆中”,无法顺利进入该游戏,很是郁闷,所以来问小编该如何解决?今天,小编就带大家一起去了解一下Win10电脑玩《DOTA2》提示“已连接至DOTA2游戏协调服务器,正在登陆中”的解决方案。解决方案一:1、开始按钮在搜索中输入C…

  • 怎么画等距线_十字线画法

    怎么画等距线_十字线画法 等距线的画法本文作者徐庆荣(武汉大学) 等距线画法可分为栅格(光栅)方式和矢量方式二种。栅格方式一般采用“距离变换”等算子实现,算法简练,但在不同方向上的等距线可能不严格等距。矢量方式是按几何关系通过坐标计算获得等距线位置,算法复杂,但精度高。本文介绍的是矢量方式的等距线画法。1.      概述简言之,等距线是指与已知线条(折线或曲线)等距的线条。等距线的应用甚广,例如

  • 树莓派小车C语言循迹,自动循迹小车_单片机/STM32/树莓派/Arduino/开发板创意项目-聚丰项目-电子发烧友网…[通俗易懂]

    树莓派小车C语言循迹,自动循迹小车_单片机/STM32/树莓派/Arduino/开发板创意项目-聚丰项目-电子发烧友网…[通俗易懂]1金属探测模块采集与计算金属探测LDC1314是根据电磁感应原理制成的,将一金属置于变化的磁场当中时,根据电磁感应原理就会在金属内部产生涡流,涡流产生的磁场反过来又影响原磁场,这种变化可以转换为电压幅值的变化,供相关电路进行检测。通过改变金属和线圈之间的距离得到不同的值,对前端探测到的数据进行再处理和分析,当其中一个线圈探测到铁丝则让小车向相反方向前进,若发现附近有硬币存在该探测器发出声音警报。L…

  • 解析LayoutSubviews

    解析LayoutSubviews解析LayoutSubviews原博:http://www.cnblogs.com/YouXianMing/p/3897543.html从百度上搜索了一下layoutSubviews的用处,以下是搜索的结果,当然,笔者是会一一验证的.1、init初始化不会触发layoutSubviews2、addSubview会触发layoutSubviews3、设置vie

  • 零基础学Java(4)字符串

    零基础学Java(4)字符串字符串从概念上讲,Java字符串就是Unicode字符序列。例如,字符串"Java\u2122"由5个Unicode字符J、a、v、a和™组成。Java没有内置的字符串类型,而是

  • Python中两List的Sql左连接实现

    内联接比较容易,之前做过,用两List的关键字进行if过滤即可;左(右)连接稍微麻烦一些,但稍思考一下,还是可以满足条件的。/Users/nisj/PycharmProjects/BiDataProc/Demand/hadoopStat/SqlLeftJoin.py#-*-coding=utf-8-*-importsysreload(sys)sys.setdefaultenc

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号