https://blog.csdn.net/weixin_45438997/article/details/115126419
使用form-data和raw作为body发起POST请求的区别
使用form-data作为body发起POST请求:
前端
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>使用form-data作为body发起POST请求</title>
</head>
<body>
</body>
<script src="http://libs.baidu.com/jquery/2.1.4/jquery.min.js"></script>
<script>
$.ajax({
url: "",
type: "POST",
data: {
"UserName": "",
"Code": ""
},
success: function (res) {
console.log(res)
},
error: function (err) {
console.log(err)
},
})
</script>
</html>
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
后端
# 以python为例
# 具体代码略
结论:
- 利用form-data方式进行POST请求的时候, 请求的参数可以通过request.argument以及request.body_arguments得到的是可以直接使用的字典格式(强烈推荐)。
- 通过requst.body得到的参数,则是分割开的,需要自行处理后才能进行使用(不推荐)。
- 1
- 2
- 3
- 4
- 5
使用raw作为body发起POST请求:
前端
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>使用form-data作为body发起POST请求</title>
</head>
<body>
</body>
<script src="http://libs.baidu.com/jquery/2.1.4/jquery.min.js"></script>
<script>
$.ajax({
headers: {
"Content-Type": "application/json"
},
url: "",
type: "POST",
data: JSON.stringify({
"UserName": "",
"Code": ""
}),
success: function (res) {
console.log(res)
},
error: function (err) {
console.log(err)
},
})
</script>
</html>
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
后端
# 以python为例
# 具体代码略
结论:
- 利用raw方式进行POST请求的时候, 请求的参数只能通过request.body获取到的。
- 通过这个参数获取到的是一个json字符串, 通过json.loads(request.body)即可将传递过来的参数转换成字典,做下一步操作。 .
- 1
- 2
- 3
- 4
- 5
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· .NET10 - 预览版1新功能体验(一)