1. 程式人生 > >有登入驗證的情況下,做介面請求

有登入驗證的情況下,做介面請求

qycloud這種方式是可以的

import requests
import pprint



def login_api():

    values = {
        "username": "apitest",
        "password": "111111",
                 "url": "",
        "ismobile": "false",
        "rememberMe": "true"
    }

    res = requests.post("http://portal.feature.delcustomapi.aysaas.com:8040/api2/user/login",data=values)
    a= res.cookies["PHPSESSID"]
    #a= res.headers['set-cookie'].split(";")[0].split("=")[1]    #這兩種方法都可以取到PHPSESSID
    print(a)
    return a


def list_rule(sessionid):

    res = requests.get("http://portal.feature.delcustomapi.aysaas.com:8040/api/rulesengin/category/",cookies={"PHPSESSID":sessionid})
    pprint.pprint(res.json())
    return res.json()


sessionid = login_api()
list_rule(sessionid)

結果

6ac7993563e66395c2a585fdaf828da6
[{'id': 1, 'name': '固定資產庫管理', 'parent_id': 0},
 {'id': 2, 'name': 'workflow觸發dataflow', 'parent_id': 0},
 {'id': 3, 'name': 'df多選新增觸發流程多次新增', 'parent_id': 0},
 {'id': 4, 'name': 'df新增觸發訊息提醒', 'parent_id': 0}]

第二種傳參方式

import requests
import pprint



def login_api():
    values = {
        "username": "apitest",
        "password": "111111",
                 "url": "",
        "ismobile": "false",
        "rememberMe": "true"
    }
    res = requests.post("http://portal.feature.delcustomapi.aysaas.com:8040/api2/user/login",data=values)
    a= res.cookies["PHPSESSID"]
    print(a)
    return a


def list_rulu(sessionid):
    headers = {
     "cookie" : "PHPSESSID="+ sessionid,
    }
    #print(headers)    #{'cookie': 'PHPSESSID=513c1540e26ee8ef45fd2fbf096c817e'}
    res = requests.get("http://portal.feature.delcustomapi.aysaas.com:8040/api/rulesengin/category/",headers=headers)
    pprint.pprint(res.json())
    return res.json()

sessionid = login_api()
list_rulu(sessionid)

結果:

5fd08f77fa31acfd66db7cd5cd411c67
[{'id': 1, 'name': '固定資產庫管理', 'parent_id': 0},
 {'id': 2, 'name': 'workflow觸發dataflow', 'parent_id': 0},
 {'id': 3, 'name': 'df多選新增觸發流程多次新增', 'parent_id': 0},
 {'id': 4, 'name': 'df新增觸發訊息提醒', 'parent_id': 0}]