【轉(zhuǎn)】 什么是MIME TYPE(關(guān)于Content-Type text/html)

一、

首先盗尸,我們要了解瀏覽器是如何處理內(nèi)容的柑船。在瀏覽器中顯示的內(nèi)容有 HTML、有 XML泼各、有 GIF鞍时、還有 Flash ……那么,瀏覽器是如何區(qū)分它們扣蜻,決定什么內(nèi)容用什么形式來顯示呢逆巍?答案是 MIME Type,也就是該資源的媒體類型莽使。

媒體類型通常是通過 HTTP 協(xié)議锐极,由 Web 服務(wù)器告知瀏覽器的,更準確地說芳肌,是通過 Content-Type 來表示的灵再,例如:

Content-Type: text/HTML

表示內(nèi)容是 text/HTML 類型,也就是超文本文件亿笤。為什么是“text/HTML”而不是“HTML/text”或者別的什么翎迁?MIME Type 不是個人指定的,是經(jīng)過 ietf 組織協(xié)商净薛,以 RFC 的形式作為建議的標準發(fā)布在網(wǎng)上的汪榔,大多數(shù)的 Web 服務(wù)器和用戶代理都會支持這個規(guī)范 (順便說一句,Email 附件的類型也是通過 MIME Type 指定的)罕拂。

通常只有一些在互聯(lián)網(wǎng)上獲得廣泛應(yīng)用的格式才會獲得一個 MIME Type揍异,如果是某個客戶端自己定義的格式全陨,一般只能以 application/x- 開頭。

XHTML 正是一個獲得廣泛應(yīng)用的格式衷掷,因此辱姨,在 RFC 3236 中,說明了 XHTML 格式文件的 MIME Type 應(yīng)該是 application/xHTML+XML戚嗅。

當然雨涛,處理本地的文件,在沒有人告訴瀏覽器某個文件的 MIME Type 的情況下懦胞,瀏覽器也會做一些默認的處理替久,這可能和你在操作系統(tǒng)中給文件配置的 MIME Type 有關(guān)。比如在 Windows 下躏尉,打開注冊表的“HKEY_LOCAL_MACHINESOFTWAREClassesMIMEDatabaseContent Type”主鍵蚯根,你可以看到所有 MIME Type 的配置信息。

二胀糜、

在把輸出結(jié)果傳送到瀏覽器上的時候颅拦,瀏覽器必須啟動適當?shù)膽?yīng)用程序來處理這個輸出文檔。這可以通過多種類型MIME(多功能網(wǎng)際郵件擴充協(xié)議)來完成教藻。在HTTP中距帅,MIME類型被定義在Content-Type header中。

例如括堤,架設(shè)你要傳送一個Microsoft Excel文件到客戶端碌秸。那么這時的MIME類型就是“application/vnd.ms-excel”。在大多數(shù)實際情況中悄窃,這個文件然后將傳送給Execl來處理(假設(shè)我們設(shè)定Execl為處理特殊MIME類型的應(yīng)用程序)讥电。在ASP中,設(shè)定MIME類型的方法是通過Response對象的ContentType屬性轧抗。

多媒體文件格式MIME

最早的HTTP協(xié)議中允趟,并沒有附加的數(shù)據(jù)類型信息,所有傳送的數(shù)據(jù)都被客戶程序解釋為超文本標記語言HTML 文檔鸦致,而為了支持多媒體數(shù)據(jù)類型,HTTP協(xié)議中就使用了附加在文檔之前的MIME數(shù)據(jù)類型信息來標識數(shù)據(jù)類型涣楷。

MIME意為多目Internet郵件擴展分唾,它設(shè)計的最初目的是為了在發(fā)送電子郵件時附加多媒體數(shù)據(jù),讓郵件客戶程序能根據(jù)其類型進行處理狮斗。然而當它被HTTP協(xié)議支持之后绽乔,它的意義就更為顯著了。它使得HTTP傳輸?shù)牟粌H是普通的文本碳褒,而變得豐富多彩折砸。

每個MIME類型由兩部分組成看疗,前面是數(shù)據(jù)的大類別,例如聲音audio睦授、圖象image等两芳,后面定義具體的種類。

常見的MIME類型

  • 超文本標記語言文本 .html,.html text/html
  • 普通文本 .txt text/plain
  • RTF文本 .rtf application/rtf
  • GIF圖形 .gif image/gif
  • JPEG圖形 .ipeg,.jpg image/jpeg
  • au聲音文件 .au audio/basic
  • MIDI音樂文件 mid,.midi audio/midi,audio/x-midi
  • RealAudio音樂文件 .ra, .ram audio/x-pn-realaudio
  • MPEG文件 .mpg,.mpeg video/mpeg
  • AVI文件 .avi video/x-msvideo
  • GZIP文件 .gz application/x-gzip
  • TAR文件 .tar application/x-tar

Internet中有一個專門組織IANA來確認標準的MIME類型去枷,但Internet發(fā)展的太快怖辆,很多應(yīng)用程序等不及IANA來確認他們使用的MIME類型為標準類型。因此他們使用在類別中以x-開頭的方法標識這個類別還沒有成為標準删顶,例如:x-gzip竖螃,x-tar等。事實上這些類型運用的很廣泛逗余,已經(jīng)成為了事實標準特咆。只要客戶機和服務(wù)器共同承認這個MIME類型,即使它是不標準的類型也沒有關(guān)系录粱,客戶程序就能根據(jù)MIME類型腻格,采用具體的處理手段來處理數(shù)據(jù)。而Web服務(wù)器和瀏覽器(包括操作系統(tǒng))中关摇,缺省都設(shè)置了標準的和常見的MIME類型荒叶,只有對于不常見的 MIME類型,才需要同時設(shè)置服務(wù)器和客戶瀏覽器输虱,以進行識別些楣。

由于MIME類型與文檔的后綴相關(guān),因此服務(wù)器使用文檔的后綴來區(qū)分不同文件的MIME類型宪睹,服務(wù)器中必須定義文檔后綴和MIME類型之間的對應(yīng)關(guān)系愁茁。而客戶程序從服務(wù)器上接收數(shù)據(jù)的時候,它只是從服務(wù)器接受數(shù)據(jù)流亭病,并不了解文檔的名字鹅很,因此服務(wù)器必須使用附加信息來告訴客戶程序數(shù)據(jù)的MIME類型。服務(wù)器在發(fā)送真正的數(shù)據(jù)之前罪帖,就要先發(fā)送標志數(shù)據(jù)的MIME類型的信息促煮,這個信息使用Content-type關(guān)鍵字進行定義,例如對于HTML文檔整袁,服務(wù)器將首先發(fā)送以下兩行MIME標識信息,這個標識并不是真正的數(shù)據(jù)文件的一部分菠齿。

Content-type: text/html

注意,第二行為一個空行坐昙,這是必須的绳匀,使用這個空行的目的是將MIME信息與真正的數(shù)據(jù)內(nèi)容分隔開。

MIME (Multipurpose Internet Mail Extensions) 是描述消息內(nèi)容類型的因特網(wǎng)標準。
MIME 消息能包含文本疾棵、圖像戈钢、音頻、視頻以及其他應(yīng)用程序?qū)S玫臄?shù)據(jù)是尔。
官方的 MIME 信息是由 Internet Engineering Task Force (IETF) 在下面的文檔中提供的:
RFC-822 Standard for ARPA Internet text messages

RFC-2045 MIME Part 1: Format of Internet Message Bodies

RFC-2046 MIME Part 2: Media Types

RFC-2047 MIME Part 3: Header Extensions for Non-ASCII Text

RFC-2048 MIME Part 4: Registration Procedures

RFC-2049 MIME Part 5: Conformance Criteria and Examples

不同的應(yīng)用程序支持不同的 MIME 類型殉了。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市嗜历,隨后出現(xiàn)的幾起案子宣渗,更是在濱河造成了極大的恐慌,老刑警劉巖梨州,帶你破解...
    沈念sama閱讀 217,826評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件痕囱,死亡現(xiàn)場離奇詭異,居然都是意外死亡暴匠,警方通過查閱死者的電腦和手機鞍恢,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,968評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來每窖,“玉大人帮掉,你說我怎么就攤上這事≈系洌” “怎么了蟆炊?”我有些...
    開封第一講書人閱讀 164,234評論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長瀑志。 經(jīng)常有香客問我涩搓,道長,這世上最難降的妖魔是什么劈猪? 我笑而不...
    開封第一講書人閱讀 58,562評論 1 293
  • 正文 為了忘掉前任昧甘,我火速辦了婚禮,結(jié)果婚禮上战得,老公的妹妹穿的比我還像新娘充边。我一直安慰自己,他們只是感情好常侦,可當我...
    茶點故事閱讀 67,611評論 6 392
  • 文/花漫 我一把揭開白布浇冰。 她就那樣靜靜地躺著,像睡著了一般聋亡。 火紅的嫁衣襯著肌膚如雪湖饱。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,482評論 1 302
  • 那天杀捻,我揣著相機與錄音,去河邊找鬼。 笑死致讥,一個胖子當著我的面吹牛仅仆,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播垢袱,決...
    沈念sama閱讀 40,271評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼墓拜,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了请契?” 一聲冷哼從身側(cè)響起咳榜,我...
    開封第一講書人閱讀 39,166評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎爽锥,沒想到半個月后涌韩,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,608評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡氯夷,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,814評論 3 336
  • 正文 我和宋清朗相戀三年臣樱,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片腮考。...
    茶點故事閱讀 39,926評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡雇毫,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出踩蔚,到底是詐尸還是另有隱情棚放,我是刑警寧澤,帶...
    沈念sama閱讀 35,644評論 5 346
  • 正文 年R本政府宣布馅闽,位于F島的核電站飘蚯,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏捞蛋。R本人自食惡果不足惜孝冒,卻給世界環(huán)境...
    茶點故事閱讀 41,249評論 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望拟杉。 院中可真熱鬧庄涡,春花似錦、人聲如沸搬设。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,866評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽拿穴。三九已至泣洞,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間默色,已是汗流浹背球凰。 一陣腳步聲響...
    開封第一講書人閱讀 32,991評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人呕诉。 一個月前我還...
    沈念sama閱讀 48,063評論 3 370
  • 正文 我出身青樓缘厢,卻偏偏與公主長得像,于是被迫代替她去往敵國和親甩挫。 傳聞我的和親對象是個殘疾皇子贴硫,可洞房花燭夜當晚...
    茶點故事閱讀 44,871評論 2 354

推薦閱讀更多精彩內(nèi)容

  • 轉(zhuǎn)載于:http://linux5588.blog.51cto.com/65280/1351007 以下過程僅是個...
    柒黍閱讀 742評論 0 1
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理英遭,服務(wù)發(fā)現(xiàn),斷路器亦渗,智...
    卡卡羅2017閱讀 134,656評論 18 139
  • 今天要的資源不是很多挖诸,我能感覺到自己能量不足,但我已經(jīng)開始了自己的練習央碟,相信自己沒有比現(xiàn)在更糟糕的了税灌,所以以后...
    FineYoga蕓蕓閱讀 248評論 1 1
  • 人生就是一列開往墳?zāi)沟牧熊嚕?路途上會有很多站口, 沒有一個人可以至始至終陪著你走完亿虽, 包括親人菱涤,友人,愛人洛勉。 你...
    運安閣閣主閱讀 245評論 0 0
  • 春風十里不如你 可愛得你 就像一泓小溪 在中午的太陽下閃著粼粼金光 水草搖曳 清澈見底 這種青春躁動的愛 來的如此...
    一葉茶閱讀 169評論 0 3