欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

学API接口测试,致富植发(四)Django框架 POST

程序员文章站 2024-03-22 09:45:16
...

 一、先研究下post方法和get方法的不同:

1、定义接口

学API接口测试,致富植发(四)Django框架 POST

2、映射请求路径

学API接口测试,致富植发(四)Django框架 POST

3、代码发送请求

import requests

if __name__ == '__main__':
    url="http://127.0.0.1:8000/student/add"
    data={"name":"peter","age":23}
    resp=requests.post(url,data=data)
    print(resp.status_code)
    print(resp.reason)
    print(resp.headers)
    print(resp.text)

4、fiddler抓取一下,研究研究

可得:get请求方式传的参数是接在请求行后的,而post请求方式传的参数是在以键值对格式放在body里的。

学API接口测试,致富植发(四)Django框架 POST

3.1、把post()里的参数data换成json

import requests

if __name__ == '__main__':
    url="http://127.0.0.1:8000/student/add"
    data={"name":"peter","age":23}
    resp=requests.post(url,json=data)
    print(resp.status_code)
    print(resp.reason)
    print(resp.headers)
    print(resp.text)

4.1、抓包可见:传的参数变成以json格式放在body里。

学API接口测试,致富植发(四)Django框架 POST

3.2、把post()里的参数json再换成params

import requests

if __name__ == '__main__':
    url="http://127.0.0.1:8000/student/add"
    data={"name":"peter","age":23}
    resp=requests.post(url,params=data)
    print(resp.status_code)
    print(resp.reason)
    print(resp.headers)
    print(resp.text)

 4.2、抓包可见:传的参数接在请求行后了。

学API接口测试,致富植发(四)Django框架 POST

3.3、可以结合使用,一部分显示在请求行里,一部分隐藏在body里。

import requests

if __name__ == '__main__':
    url="http://127.0.0.1:8000/student/add"
    params={"name":"peter","age":23}
    data={"password":"123456"}
    resp=requests.post(url,params=params,json=data)
    print(resp.reason)
    print(resp.headers)
    print(resp.text)

4.3、

学API接口测试,致富植发(四)Django框架 POST

相关标签: django post