當瀏覽器通過各種請求方法,試圖從伺服器獲得資料的時候,伺服器就必須將正確的資料返回給瀏覽器。瀏覽器並不關心伺服器是如何進行處理的,伺服器可以返回乙個預先編輯好的html文件,也能根據請求動態生成返回的資料。而www的一大特點就是能用來傳送多**資料,並且這些資料的傳送是完全透明的,通過同樣的http連線,可以傳送不同格式的聲音、圖象等資料。當伺服器僅僅用於返回靜態的html文件的時候,瀏覽器能夠很容易的識別其資料型別,但當伺服器不但用於返回靜態的html文件,還可以動態返回各種型別的多**資訊時,瀏覽器就不能僅僅從url請求本身上判斷伺服器將會返回何種資料了。
伺服器和瀏覽器之間是採用了另外的方式來標識資料的型別,這種方式下通過在傳輸真正的資料之前,預先傳輸乙個資料的mime型別的方法,來標識資料型別。
最早的http協議中,並沒有附加的資料型別資訊,所有傳送的資料都被客戶程式解釋為超文字標記語言html 文件,而為了支援多**資料型別,http協議中就使用了附加在文件之前的mime資料型別資訊來標識資料型別。
mime意為多目的internet郵件擴充套件,它設計的最初目的是為了在傳送電子郵件時附加多**資料,讓郵件客戶程式能根據其型別進行處理。然而當它被http協議支援之後,它的意義就更為顯著了。它使得http傳輸的不僅是普通的文字,而變得豐富多彩。
每個mime型別由兩部分組成,前面是資料的大類別,例如聲音audio、圖象image等,後面定義具體的種類。
常見的mime型別:
internet中有乙個專門組織iana來確認標準的mime型別,但internet發展的太快,很多應用程式等不及iana來確認他們使用的mime型別為標準型別。因此他們使用在類別中以x-開頭的方法標識這個類別還沒有成為標準,例如:x-gzip,x-tar等。事實上這些型別運用的很廣泛,已經成為了事實標準。只要客戶機和伺服器共同承認這個mime型別,即使它是不標準的型別也沒有關係,客戶程式就能根據mime型別,採用具體的處理手段來處理資料。而web伺服器和瀏覽器(包括作業系統)中,預設都設定了標準的和常見的mime型別,只有對於不常見的 mime型別,才需要同時設定伺服器和客戶瀏覽器,以進行識別。
由於mime型別與文件的字尾相關,因此伺服器使用文件的字尾來區分不同檔案的mime型別,伺服器中必須定義文件字尾和mime型別之間的對應關係。而客戶程式從伺服器上接收資料的時候,它只是從伺服器接受資料流,並不了解文件的名字,因此伺服器必須使用附加資訊來告訴客戶程式資料的mime型別。伺服器在傳送真正的資料之前,就要先傳送標誌資料的mime型別的資訊,這個資訊使用content-type關鍵字進行定義,例如對於html文件,伺服器將首先傳送以下兩行mime標識資訊,這個標識並不是真正的資料檔案的一部分。
content-type: text/html
注意,第二行為乙個空行,這是必須的,使用這個空行的目的是將mime資訊與真正的資料內容分隔開。
MIME型別介紹
多用途網際網路郵件擴充套件 mime,multipurpose internet mail extensions 是乙個網際網路標準,它擴充套件了電子郵件標準,使其能夠支援非ascii字元 二進位制格式附件等多種格式的郵件訊息。這個標準被定義在 rfc 2045,rfc 2046,rfc 2047,...
MIME 型別列表
mime型別就是設定某種副檔名的檔案用一種應用程式來開啟的方式型別,當該副檔名檔案被訪問的時候,瀏覽器會自動使用指定應用程式來開啟。多用於指定一些客戶端自定義的檔名,以及一些 檔案開啟方式。mime的英文全稱是 multipurpose internet mail extensions 多功能int...
MIME的常見型別
response物件通過設定contenttype使客戶端瀏覽器,區分不同種類的資料,並根據不同的mime呼叫瀏覽器內不同的程式嵌入模組來處理相應的資料。mime型別格式 類別 子類別 引數 content type type subtype parameter mime主類別 text 用於標準化...