• HTTPBasicAuth用户及密码 加密


    Httpunner HTTPBasicAuth加密

    # 第一种方式
    auth_token = None
    def getToken(loginURL, login_client, login_client_pwd, login_user, login_pwd, login_grt_type):
        '''
        获取token, 预留
        :param accessToken:
        :return:
        '''
        global auth_token
        if not auth_token:
            loginURL = loginURL.strip('/')
            auth = HTTPBasicAuth(login_client, login_client_pwd)
            data_value = {'username': login_user,
                          'password': login_pwd,
                          'grant_type': login_grt_type}
            url = loginURL + '/api/token'
            res = requests.request('POST', url, data = data_value, auth=auth)
            response = res.json()
            auth_token = 'Bearer ' + str(response.get('access_token'))
        return auth_token

    config: name: 管理 base_url:
    '' variables: Authorization: ${getToken($oauthURL, $login_client, $login_client_pwd, $login_user, $login_pwd, $login_grt_type)} teardown_hooks: []
    # 第二种方式
    def set_hook_basic_auth(request, client, client_pwd):
        '''
        basicAuth 用户及密码 加密
        :param request:
        :param client:
        :param client_pwd:
        :return:
        '''
        request['auth'] = HTTPBasicAuth(client, client_pwd)
    
    def alter_response(res):
        '''
        获取token
        :param accessToken:
        :return:
        '''
        if res.json.get('access_token'):
            res.json['access_token'] = "Bearer " + res.json.get('access_token')
    
    
    
    -   name: 登录
        api: api/登录/登录.yaml
        variables:
            username: 'admin'
            password: '123456'
            grant_type: 'password'
        validate: []
        setup_hooks:
            - ${set_hook_basic_auth($request, client, 123456)}
        output:
            - accessToken: content.access_token
    # 第三种
    
    from requests.auth import HTTPBasicAuth
    import requests
    
    def getToken(loginURL, login_client, login_client_pwd, login_user, login_pwd, login_grt_type):
        '''
        获取token, 预留
        :param accessToken:
        :return:
        '''
        global auth_token
        if not auth_token:
            loginURL = loginURL.strip('/')
            auth = HTTPBasicAuth(login_client, login_client_pwd)
            data_value = {'username': login_user,
                          'password': login_pwd,
                          'grant_type': login_grt_type}
            url = loginURL + '/api/token'
            res = requests.request('POST', url, data = data_value, auth=auth)
            response = res.json()
            auth_token = 'Bearer ' + str(response.get('access_token'))
        return auth_token
    
    testsuites:
    config:
        name: 测试API
        base_url: ''
        variables:
            login_client: 'client'
            login_client_pwd: 'pwd1'
            login_user: 'user'
            login_pwd: 'pwd2'
            login_grt_type: 'password'
            Authorization: ${getToken($oauthURL, $login_client, $login_client_pwd, $login_user, $login_pwd, $login_grt_type)}
  • 相关阅读:
    修改MySQL数据文件的位置
    服务名无效。请键入 NET HELPMSG 2185 以获得更多的帮助。
    索引的讲解
    运行php程序时,浏览器跳出打开和保存提示框
    ora-4031错误
    MySQL_Oracle_事物的隔离级别
    GNU与Linux
    计算机网络_第一章
    Linux网卡高级命令
    Linux RAID简介
  • 原文地址:https://www.cnblogs.com/snailgirl/p/13177883.html
Copyright © 2020-2023  润新知