python测试开发django-131.jQuery中$.ajax()方法POST提交contentType:“application/json“类型数据

Posted 上海-悠悠

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python测试开发django-131.jQuery中$.ajax()方法POST提交contentType:“application/json“类型数据相关的知识,希望对你有一定的参考价值。

前言

$.ajax()方法提交POST请求时,contentType发送数据到服务器时所使用的内容类型。默认是:“application/x-www-form-urlencoded”。
如果想以json格式提交,可以设置参数contentType:“application/json”

POST请求默认提交格式

contentType发送数据到服务器时所使用的内容类型。默认是:“application/x-www-form-urlencoded”。

// 作者-上海悠悠 QQ交流群:717225969
// blog地址 https://www.cnblogs.com/yoyoketang/
<script>
    $.ajax({
            url: "/api/v1/demo",
            type: "POST",  //默认值: "GET"请求方式 ("POST" 或 "GET")
            data: {    //提交的数据,将自动转换为请求字符串格式
                    page: 1,
                    size: 10,
                    search : "yoyo"
            dataType:"json",   //服务器返回的类型json,xml,text,html等
            success: function(result, status, xhr){      // 回调结果,如果成功
                       alert("接口返回状态:"+status)  
                    },
            error: function(xhr, status, error) {
                        alert("接口返回状态:"+status)
                     }
            })

</script>

如果data参数是Object对象格式,提交的时候会自动转成字符串格式"page=1&size=10&search=yoyo"

           data: {    //提交的数据,将自动转换为请求字符串格式
                    page: 1,
                    size: 10,
                    search : "yoyo"
                }

data参数也可以直接写成字符串:page=1&size=10&search=yoyo

// 作者-上海悠悠 QQ交流群:717225969
// blog地址 https://www.cnblogs.com/yoyoketang/
    $.ajax({
            url: "/api/v1/demo",
            type: "POST",  //默认值: "GET"请求方式 ("POST" 或 "GET")
            data: "page=1&size=10&search=yoyo",
            dataType:"json",   //服务器返回的类型json,xml,text,html等
            success: function(result, status, xhr){      // 回调结果,如果成功
                       alert("接口返回状态:"+status)  
                    },
            error: function(xhr, status, error) {
                        alert("接口返回状态:"+status)
                     }
            })

以上2种方式提交结果都是一样

contentType:"application/json"类型

设置contentType:"application/json"类型,那么 data 传的参数必须是 json 字符串格式

// 作者-上海悠悠 QQ交流群:717225969
// blog地址 https://www.cnblogs.com/yoyoketang/

    var body = {
            page: 1,
            size: 10,
            search : "yoyo"
        };
   $.ajax({
            url: "/api/v1/demo",
            type: "POST",  //默认值: "GET"请求方式 ("POST" 或 "GET")
            data: JSON.stringify(body),
            dataType:"json",   //服务器返回的类型json,xml,text,html等
            success: function(result, status, xhr){      // 回调结果,如果成功
                       alert("接口返回状态:"+status)  
                    },
            error: function(xhr, status, error) {
                        alert("接口返回状态:"+status)
                     }
            })

以上是关于python测试开发django-131.jQuery中$.ajax()方法POST提交contentType:“application/json“类型数据的主要内容,如果未能解决你的问题,请参考以下文章

测试开发系列之Python开发mock接口

学习python 测试开发

测试开发系列之Python开发mock接口

Python 开发与接口测试学习笔记

Python:Python常用开发框架Framework(WEB测试爬虫)总结

测试开发系列之Python开发mock接口