IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> Http请求中的Content-Type -> 正文阅读

[网络协议]Http请求中的Content-Type

场景

在前后端接口调试的时候,遇到一个地方比较坑(只能说自己这方面知识不够)。

两个接口同样是使用POST请求,同样是用一个Integer类型参数接收,但是一个能接到值,一个始终接不到值;

经过半天的折腾排查,终于发现问题在http请求头上的Content-Type上。

下面整理一下这方面的知识。

学习

基本概念

Content-Type既会出现在http请求的请求头中,也会出现响应头中。当作为请求头出现时,客户端告诉服务器实际发送的数据类型;当作为响应头时,服务端告诉客户端实际返回的内容的内容类型。

Content-Type中常见的类型

  • 以text开头的:

    text/html: HTML格式

    text/plain:纯文本格式

    text/xml: XML格式

  • 以image开头的:

    image/gif:gif图片格式

    image/jpeg:jpg图片格式

    image/png:png图片格式

  • 以application开头的:

    application/xhtml+xml:XHTML格式

    application/xml: XML数据格式

    application/atom+xml:Atom XML聚合格式

    application/json: JSON数据格式

    application/pdf:pdf格式

    application/msword: Word文档格式

    application/octet-stream: 二进制流数据(如常见的文件下载)

    application/x-www-form-urlencoded: 中默认的encType,form表单数据被编码为key/value格式发送到服务器(表单默认的提交数据的格式)。

  • 另外的常见类型

    multipart/form-data : 需要在表单中进行文件上传时,就需要使用该格式。

    binary:上传二进制文件

以上就是在日常开发中,经常会遇到的一些content-type格式。

对常用的几个做一些解释

application/json:此类型用来告诉服务端消息主体是序列化后的 JSON 字符串。

application/x-www-form-urlencoded:浏览器原生form表单默认的提交方式(在不设置enctype的情况下)。

multipart/form-data:支持文件的传输。

应用场景

POST方式提交的请求:

1、application/x-www-form-urlencoded:@RequestBody不是必须加的。

2、mutipart/form-data:@RequestBody不能处理这种格式 。

3、其他格式,比如application/json,application/xml等,必须使用@RequestBody来处理 。

@ResquestBody注解可以使http消息转换器根据Content-Type对请求体进行解析。


以上就是对这次遇到的坑的简单的学习总结。希望能对遇到类似问题的小伙伴有所帮助。

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2022-04-09 18:53:50  更:2022-04-09 18:56:13 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 3:27:43-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码