python接口自动化之带Header信息的请求封装

# coding=utf-8
import requests
from Logs.Log import Logger
import json
from Public.GetToken import Token
log=Logger('请求日志执行结果').getlog()
class WebRequests():
    #传入get请求必要的参数
    def get(self, url, params=None, headers=None, files=None,cookies=None):
        '''封装get方法,return返回响应信息'''
        try:
            #设置headers信息
            headers = {'Content-Type': 'application/json;charset=UTF-8'}
            r = requests.get(url, params=params, headers=headers, files=files, cookies=cookies)
            log.info("请求的内容:%s" % params)
            status_code = r.status_code  # 获取响应状态码
            log.info("获取返回的状态码:%d" % status_code)
            response_json = r.json()  # 获取json格式类型的数据
            log.info("响应内容:%s" % response_json)
            return r  # 返回响应的数据
            log.info('接口请求成功')
        except BaseException as e:
            log.error("请求失败!", exc_info=1)
    #传入post请求必要的参数
    def post(self, url, data=None, headers=None, files=None,cookies=None):
        '''封装post方法,return返回响应数据'''
        try:
            # 设置headers数据  里面token数据来源于Token类中的GetLoginToken()函数提取的数值
            headers = {'Content-Type': 'application/json;charset=UTF-8','sid':Token().GetLoginToken()}
            r = requests.post(url, data=data, headers=headers, files=files, cookies=cookies)
            log.info("请求的内容:%s" % data)
            status_code = r.status_code  # 获取请求返回的状态码
            log.info("获取返回的状态码:%d" % status_code)
            response_json = r.json()  # 获取json格式的相应信息
            log.info("响应内容:%s" % response_json)
            #返回获取的相应数据
            return  r
            log.info('接口请求成功')
        except BaseException as e:
            log.error("请求失败!", exc_info=1)

注意:
1.需要设置单独的类去获取token信息
2.将token信息放置在header头中
3.封装后只传入data和url数据即可

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值