Rumah >hujung hadapan web >html tutorial >Penerangan jenis Kandungan ialah susunan jenis pengepala permintaan HTTP_HTML/Xhtml_Pengeluaran halaman web

Penerangan jenis Kandungan ialah susunan jenis pengepala permintaan HTTP_HTML/Xhtml_Pengeluaran halaman web

WBOY
WBOYasal
2016-05-16 16:40:051450semak imbas

Untuk mempelajari jenis kandungan, anda mesti tahu terlebih dahulu apa itu dan untuk apa ia digunakan.

Protokol HTTP (RFC2616) menggunakan model permintaan/tindak balas. Pelanggan menghantar permintaan kepada pelayan Pengepala permintaan mengandungi kaedah permintaan, URI, versi protokol dan struktur mesej seperti MIME yang mengandungi pengubah suai permintaan, maklumat klien dan kandungan. Pelayan bertindak balas dengan baris status yang mengandungi versi protokol mesej, kejayaan atau kod ralat serta maklumat pelayan, metamaklumat entiti dan mungkin kandungan entiti.

Biasanya mesej HTTP terdiri daripada baris permulaan, satu atau lebih medan pengepala, baris kosong yang hanya menamatkan medan pengepala dan badan mesej pilihan. Medan pengepala HTTP merangkumi empat bahagian: pengepala umum, pengepala permintaan, pengepala respons dan pengepala entiti. Setiap medan pengepala terdiri daripada nama domain, titik bertindih (:) dan nilai domain. Nama domain tidak peka huruf besar-besaran Sebarang bilangan ruang boleh ditambah sebelum medan Pengepala boleh dikembangkan kepada berbilang baris, menggunakan sekurang-kurangnya satu ruang atau tab pada permulaan setiap baris.

Kedua-dua mesej permintaan dan mesej respons boleh mengandungi maklumat entiti secara amnya terdiri daripada medan dan entiti pengepala entiti. Medan pengepala entiti mengandungi maklumat asal tentang entiti Pengepala entiti termasuk Benarkan, Pangkalan Kandungan, Pengekodan Kandungan, Bahasa Kandungan, Panjang Kandungan, Lokasi Kandungan, Kandungan-MD5, Julat Kandungan, Jenis Kandungan, Etag. , dan Tamat Tempoh , Last-Modified, extension-header.
Jenis Kandungan ialah kandungan yang sangat penting dalam mesej yang dikembalikan, menunjukkan jenis MIME yang dimiliki oleh dokumen berikutnya. Jenis Kandungan: [jenis]/[subjenis]; Sebagai contoh, yang paling biasa ialah teks/html, yang bermaksud kandungan yang dikembalikan ialah jenis teks, dan teks ini dalam format HTML. Pada dasarnya, penyemak imbas akan memutuskan cara untuk memaparkan kandungan isi mesej yang dikembalikan berdasarkan Jenis Kandungan.

jenis mempunyai bentuk berikut

Teks: digunakan untuk representasi piawai bagi maklumat teks boleh dalam beberapa set aksara dan atau dalam pelbagai format;
Multipart: digunakan untuk menyambungkan berbilang bahagian badan mesej untuk membentuk mesej. Bahagian ini boleh menjadi jenis data yang berbeza

Aplikasi: digunakan untuk menghantar data aplikasi atau data binari >Mesej: digunakan untuk membungkus mesej E-mel;

Imej: digunakan untuk menghantar data imej statik; : digunakan untuk menghantar data imej dinamik, yang boleh menjadi format data video yang diedit bersama dengan audio.

subjenis digunakan untuk menentukan bentuk jenis yang terperinci. Set pasangan jenis kandungan/subjenis, dan parameter yang berkaitan, akan berkembang dari semasa ke semasa. Untuk memastikan nilai-nilai ini dibangunkan secara teratur dan awam, MIME menggunakan Internet Assigned Numbers Authority (IANA) sebagai mekanisme pendaftaran pusat untuk mengurus nilai-nilai ini.

parameter boleh digunakan untuk menentukan maklumat tambahan Dalam lebih banyak kes, ia ialah parameter charset yang digunakan untuk menentukan kaedah pengekodan teks seperti teks/biasa dan teks/htm. MIME menetapkan subjenis lalai berdasarkan jenis Apabila klien tidak dapat menentukan subjenis mesej, mesej itu dianggap sebagai subjenis lalai untuk diproses. Teks lalai kepada teks/biasa, Aplikasi lalai kepada aplikasi/strim oktet dan Berbilang bahagian dianggap sebagai berbilang/bercampur secara lalai. Untuk penyemak imbas IE6, jika jenis dalam Content-Type tidak konsisten dengan jenis badan mesej sebenar, ia akan menganalisis jenis sebenar mengikut jenis dalam kandungan Ia boleh betul untuk format imej biasa seperti JPG dan GIF tanpa mengira apa yang ditulis dalam Jenis Kandungan.
Jika Jenis-Kandungan menentukan jenis yang boleh dibuka oleh penyemak imbas secara langsung, penyemak imbas akan terus membuka kandungannya dan memaparkannya Jika ia adalah jenis yang dikaitkan dengan aplikasi lain, maka perlu mencari di dalam pendaftaran. Mengenai jenis pendaftaran ini, jika dibenarkan dibuka terus tanpa bertanya, permohonan berkaitan akan terus dipanggil untuk membuka fail, tetapi jika tidak dibenarkan dibuka terus, ia akan ditanya sama ada untuk membukanya. Untuk jenis yang tidak dikaitkan dengan mana-mana aplikasi, pelayar IE tidak tahu cara membukanya Pada masa ini, IE6 akan menganggapnya sebagai XML dan cuba membukanya.


Jika anda ingin memuat turun fail, anda boleh menambahkannya pada pengepala http:


fprintf(file, "Content-Disposition:attachment; filename="%s " rn", fileName);

Selepas ujian, fail yang asalnya dibuka dalam halaman web seperti html, pdf, gif, dll. boleh dimuat turun seperti biasa.
'hqx' => 'application/mac-binhex40', 'cpt' => 'application/mac-compactpro',
'doc' => 'aplikasi/msword',
'bin' => 'aplikasi/strim-oktet',
'dms' => 'strim-permohonan/oktet',
'lha' => 'strim-permohonan/oktet',
'lzh' => 'aplikasi/oktet-strim',
'exe' => 'aplikasi/oktet-strim',
'class' => 'aplikasi/oktet -strim',
'jadi ' => 'application/octet-stream',
'dll' => 'application/octet-stream',
'oda' => 'application/ oda',
'pdf' => ' application/pdf',
'ai' => 'permohonan/postscript',
'eps' => 'permohonan/postskrip',
'ps' => 'permohonan/postskrip',
'smi' => 'permohonan/smil',
'smil' => 'permohonan/smil',
'mif' => 'application/vnd.mif',
'xls' => 'application/vnd.ms-excel',
'ppt' => 'application/vnd.ms-powerpoint',
'wbxml' => 'application/vnd.wap.wbxml',
'wmlc' => 'application/vnd.wap.wmlc',
'wmlsc' => 'application/vnd.wap.wmlscriptc',
'bcpio' => 'application/x-bcpio',
'vcd' => 'application/x-cdlink',
'pgn' => 'application/x-chess-pgn',
'cpio' => 'application/x-cpio',
'csh' => 'application/x-csh',
'dcr' => 'application/x-director',
'dir' => 'application/x-director',
'dxr' => 'application/x-director',
'dvi' => 'aplikasi/x-dvi',
'spl' => 'application/x-futuresplash',
'gtar' => 'aplikasi/x-gtar',
'hdf' => 'aplikasi/x-hdf',
'js' => 'application/x-javascript',
'skp' => 'application/x-koan',
'skd' => 'application/x-koan',
'skt' => 'application/x-koan',
'skm' => 'aplikasi/x-koan',
'lateks' => 'aplikasi/x-lateks',
'nc' => 'application/x-netcdf',
'cdf' => 'application/x-netcdf',
'sh' => 'application/x-sh',
'shar' => 'aplikasi/x-shar',
'swf' => 'application/x-shockwave-flash',
'sit' => 'application/x-stuffit',
'sv4cpio' => 'application/x-sv4cpio',
'sv4crc' => 'application/x-sv4crc',
'tar' => 'application/x-tar',
'tcl' => 'application/x-tcl',
'tex' => 'application/x-tex',
'texinfo' => 'application/x-texinfo',
'texi' => 'application/x-texinfo',
't' => 'application/x-troff',
'tr' => 'application/x-troff',
'roff' => 'application/x-troff',
'man' => 'application/x-troff-man',
'me' => 'application/x-troff-me',
'ms' => 'application/x-troff-ms',
'ustar' => 'application/x-ustar',
'src' => 'aplikasi/x-wais-source',
'xhtml' => 'application/xhtml xml',
'xht' => 'application/xhtml xml',
'zip' => 'permohonan/zip',
'au' => 'audio/asas',
'snd' => 'audio/asas',
'pertengahan' => 'audio/midi',
'midi' => 'audio/midi',
'kar' => 'audio/midi',
'mpga' => 'audio/mpeg',
'mp2' => 'audio/mpeg',
'mp3' => 'audio/mpeg',
'aif' => 'audio/x-aiff',
'aiff' => 'audio/x-aiff',
'aifc' => 'audio/x-aiff',
'm3u' => 'audio/x-mpegurl',
'ram' => 'audio/x-pn-realaudio',
'rm' => 'audio/x-pn-realaudio',
'rpm' => 'audio/x-pn-realaudio-plugin',
'ra' => 'audio/x-realaudio',
'wav' => 'audio/x-wav',
'pdb' => 'kimia/x-pdb',
'xyz' => 'kimia/x-xyz',
'bmp' => 'imej/bmp',
'gif' => 'imej/gif',
'ief' => 'imej/ief',
'jpeg' =>> 'imej/jpeg',
'jpg' => 'imej/jpeg',
'jpe' =>> 'imej/jpeg',
'png' => 'imej/png',
'tiff' => 'imej/tiff',
'tif' => 'imej/tiff',
'djvu' => 'image/vnd.djvu',
'djv' => 'image/vnd.djvu',
'wbmp' => 'image/vnd.wap.wbmp',
'ras' => 'imej/x-cmu-raster',
'pnm' => 'image/x-portable-anymap',
'pbm' => 'image/x-portable-bitmap',
'pgm' => 'image/x-portable-graymap',
'ppm' => 'image/x-portable-pixmap',
'rgb' => 'imej/x-rgb',
'xbm' => 'image/x-xbitmap',
'xpm' => 'image/x-xpixmap',
'xwd' => 'image/x-xwindowdump',
'igs' => 'model/iges',
'iges' => 'model/iges',
'msh' => 'model/mesh',
'mesh' => 'model/mesh',
'silo' => 'model/mesh',
'wrl' => 'model/vrml',
'vrml' => 'model/vrml',
'css' => 'teks/css',
'html' => 'teks/html',
'htm' => 'text/html',
'asc' => 'teks/plain',
'txt' => 'teks/biasa',
'rtx' => 'text/richtext',
'rtf' => 'teks/rtf',
'sgml' => 'teks/sgml',
'sgm' => 'text/sgml',
'tsv' => 'text/tab-separated-values',
'wml' => 'text/vnd.wap.wml',
'wmls' => 'text/vnd.wap.wmlscript',
'etx' => 'text/x-setext',
'xsl' => 'teks/xml',
'xml' => 'teks/xml',
'mpeg' => 'video/mpeg',
'mpg' => 'video/mpeg',
'mpe' => 'video/mpeg',
'qt' => 'video/quicktime',
'mov' => 'video/quicktime',
'mxu' => 'video/vnd.mpegurl',
'avi' => 'video/x-msvideo',
'movie' => 'video/x-sgi-movie',
'ice' => 'x-conference/x-cooltalk',

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn