Requests接口测试(三)

一、定制请求头

我们先来看一下,关于请求头的定制演示,相信了解http协议的小伙伴应该对请求头部headers请求头部并不陌生,那么作为实际工作中的我们,如果想自定义一些请求头的信息,我们应该怎么办呢?其实很简单,只需要将发送的自定义请求里面传入一个dict(字典即可),下面我们来看一下代码示例:

注: 所有的header值必须是string、bytestringunicode,虽然传递unicode header是允许的,但不建议这样做!

二、定制请求头代码示例

#coding=utf-8

import requests

if __name__ == '__main__':
    print ('开始演示------>')
    url = 'http://www.baidu.com'
    #定义请求头数据
    headers={'user-agent':'www.testingunion.com',
             'custom-head':'fighter_test'}
    #发送自定义请求头数据
    r = requests.get(url,headers=headers)
    

我们运行上面的代码前,需要先打开fidder,然后运行上面的代码,在fidder中可以查询设置的请求头信息是否成功,如下图:

三、Post请求示例

我们看一下post是如何发送json数据到服务器的:

import requests

if __name__ == '__main__':
    print ('开始演示------>')
    #目标地址
    url = 'http://jsonplaceholder.typicode.com/posts'
    #自定义头
    headers={
        'custom-post':'my-post',
        'custom-header':'my-json-header'
    }
    #要post的数据
    json_data = {'title':'deeptest',
                 'body':'fighter007',
                 'userId':'1'}
    #post json格式的数据
    r = requests.post(url,json=json_data,headers=headers)
    #打印返回结果
    print(r.text)

返回结果:

使用fidder抓包分析数据结果:

到此我们就演示完了,是不是很简单呢?

posted @ 2018-02-19 13:45  IT测试老兵  阅读(305)  评论(0编辑  收藏  举报
作者:测试老兵
出处:https://www.cnblogs.com/fighter007/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。