一文弄懂POST提交的Content-Type值

一文弄懂POST提交的Content-Type值

游戏|数码彩彩2024-04-24 7:35:41396A+A-

一文弄懂POST提交的Content-Type值

 

 

一个只用markdown语法编写文章的90后野路子Web架构师,每天都分享一些有用的知识点,欢迎关注~

1. 概述

本文主要整理了POST提交数据到API时Content-Type的使用。

2. 脑图

 

一文弄懂POST提交的Content-Type值

 

 

3. multipart/form-data

将FORM表单数据使用指定的分割字符(boundary)组装成一个字符串提交,可用于提交二进制数据,如上传文件。

请求头加入: Content-Type: multipart/form-data; boundary=尽量长的分割字符串

请求方式如下:

 

一文弄懂POST提交的Content-Type值

 

 

php端接收数据方式: 使用 $_POST 变量接收。如下:

 

一文弄懂POST提交的Content-Type值

 

 

4. Application/x-www-form-urlencode

将FORM表单数据使用urlencode编码,然后用&连接,组装成k1=v1&k2=v2格式字符串提交,对于提交大量二进制数据比较低效。

请求头加入:Content-Type: application/x-www-form-urlencode

请求方式如下:

 

一文弄懂POST提交的Content-Type值

 

 

PHP端接收数据方式:1). 使用 $_POST 变量 2). 使用 file_get_contents("php://input")方法,然后用parse_str函数解析

 

一文弄懂POST提交的Content-Type值

 

 

5. application/json

告知服务端POST提交的是JSON字符串。

请求头加入:Content-Type: application/json

请求方式如下:

 

一文弄懂POST提交的Content-Type值

 

 

PHP端接收数据方式:使用 file_get_contents("php://input") 方法,然后用json_decode函数解析

 

一文弄懂POST提交的Content-Type值

 

6. text/plain

告知服务端JSON提交的是文本字符串。

请求头加入:Content-Type: text/plain

请求方式如下:

 

一文弄懂POST提交的Content-Type值

 

 

PHP端接收数据方式:使用 file_get_contents("php://input") 方法

 

一文弄懂POST提交的Content-Type值

 

总结

  • 文件上传用multipart/form-data类型,然后用$_FILES和$_POST接收参数。
  • 通用接口用application/x-www-form-urlencode类型,然后用$_POST或file_get_contents("php://input")接受参数。
  • 只接受JSON字符串的接口用application/json类型,然后用file_get_contents("php://input")接受参数。
点击这里复制本文地址 版权声明:本文内容由网友提供,该文观点仅代表作者本人。本站(https://www.angyang.net.cn)仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。

昂扬百科 © All Rights Reserved.  渝ICP备2023000803号-3网赚杂谈