zoukankan      html  css  js  c++  java
  • 使用form-data和raw作为body发起POST请求的区别

    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
  • 相关阅读:
    01_3_创建一个Action
    01_2_Namespace命名空间
    01_1_Socket实现
    03_2_JAVA中的面向对象与内存解析
    01_1_Struts环境搭建
    Zabbix通过Orabbix监控Oracle数据库
    Zabbix通过JMX方式监控java中间件
    nginx启用status状态页
    zabbix数据库分表的实现
    配置sudo记录日志
  • 原文地址:https://www.cnblogs.com/sunny3158/p/14979234.html
Copyright © 2011-2022 走看看