当前位置: 首页 > article >正文

http的MIME类型

在 HTTP 协议中,MIME 类型(Multipurpose Internet Mail Extensions)用于描述传输内容的类型和格式。MIME 类型通过 Content-Type 头字段来指定,告知客户端如何处理和显示接收到的数据。

常见的 MIME 类型

以下是一些常见的 MIME 类型及其用途:

文本文件

  • text/plain:纯文本文件
  • text/html:HTML 文件
  • text/css:CSS 文件
  • text/javascript:JavaScript 文件

图像文件

  • image/jpeg:JPEG 图像
  • image/png:PNG 图像
  • image/gif:GIF 图像
  • image/svg+xml:SVG 图像

音频文件

  • audio/mpeg:MP3 音频
  • audio/wav:WAV 音频
  • audio/ogg:OGG 音频

视频文件

  • video/mp4:MP4 视频
  • video/webm:WebM 视频
  • video/ogg:OGG 视频

应用程序文件

  • application/json:JSON 数据
  • application/xml:XML 数据
  • application/pdf:PDF 文件
  • application/zip:ZIP 压缩文件
  • application/octet-stream:二进制数据流(通常用于下载文件)

在 HTTP 中使用 MIME 类型

在 HTTP 协议中,MIME 类型通常通过 Content-Type 头字段来指定。例如,当服务器返回一个 HTML 文件时,响应头中会包含以下内容:

Content-Type: text/html

示例代码

以下是一个使用 Node.js 和 Express 框架设置 MIME 类型的示例:

const express = require('express');
const app = express();
const port = 3000;

app.get('/', (req, res) => {
  res.setHeader('Content-Type', 'text/html');
  res.send('<h1>Hello, World!</h1>');
});

app.get('/image', (req, res) => {
  res.setHeader('Content-Type', 'image/png');
  res.sendFile('/path/to/image.png');
});

app.get('/data', (req, res) => {
  res.setHeader('Content-Type', 'application/json');
  res.json({ message: 'Hello, World!' });
});

app.listen(port, () => {
  console.log(`Server is running at http://localhost:${port}`);
});

解释

  1. res.setHeader(‘Content-Type’, ‘text/html’):设置响应头的 Content-Type 为 text/html,表示返回的是一个 HTML 文件。
  2. res.sendFile(’/path/to/image.png’):发送一个 PNG 图像文件,并设置 Content-Type 为 image/png。
  3. res.json({ message: ‘Hello, World!’ }):发送一个 JSON 数据,并设置 Content-Type 为 application/json。

MIME 类型的完整列表

以下是一些常见的 MIME 类型及其子类型的完整列表:

文本文件

  • text/plain
  • text/html
  • text/css
  • text/javascript
  • text/markdown
  • text/xml

图像文件

  • image/jpeg
  • image/png
  • image/gif
  • image/svg+xml
  • image/webp
  • image/bmp

音频文件

  • audio/mpeg
  • audio/wav
  • audio/ogg
  • audio/webm
  • audio/aac

视频文件

  • video/mp4
  • video/webm
  • video/ogg
  • video/avi
  • video/mpeg

应用程序文件

  • application/json
  • application/xml
  • application/pdf
  • application/zip
  • application/octet-stream
  • application/msword
  • application/vnd.ms-excel
  • application/vnd.ms-powerpoint
  • application/vnd.openxmlformats-officedocument.wordprocessingml.document
  • application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
  • application/vnd.openxmlformats-officedocument.presentationml.presentation

通过正确设置 MIME 类型,服务器可以告知客户端如何处理和显示接收到的数据,从而确保数据的正确传输和显示。


http://www.kler.cn/a/443663.html

相关文章:

  • XXLJob部署和使用教程
  • CI/CD是什么?
  • 国标GB28181视频监控平台与Liveweb视频监控汇聚平台对接方案
  • 无人设备遥控器之定向天线篇
  • 使用TC命令模拟弱网丢包
  • CASA(Carnegie-Ames-Stanford Approach) 模型原理及实践
  • 踩准智能汽车+机器人两大风口,速腾聚创AI+机器人应用双线爆发
  • 家校通小程序实战教程10部门管理前后端连接
  • AI工具如何深刻改变我们的工作与生活
  • Java 学习之路:开启编程世界的大门
  • 2.学习TypeScript 编译选项配置
  • Appium怎样连接多台设备?
  • Java项目--仿RabbitMQ的消息队列--虚拟主机设计
  • 如何使用Selenium处理JavaScript动态加载的内容?
  • 《算法SM4》题目
  • uniapp连接蓝牙操作(蓝牙设备地锁)
  • 授权模型DAC
  • PostgreSQL 常用运维SQL整理
  • 3.zabbix中文设置
  • 洛谷 B3836 [GESP202303 二级] 百鸡问题
  • day-21 内核链表以及栈
  • CSS系列(17)-- 工具与生态系统详解
  • 【实用技能】如何在 Unity3D 中将网页内容渲染为纹理
  • ChatGPT与领域特定语言的集成
  • [手机Linux] 六,ubuntu18.04私有网盘(NextCloud)安装
  • MFC扩展库BCGControlBar Pro v36.0 - 工具栏 对话框组件升级