登錄后獲取token,作為參數傳入下一個操作


在我們做查詢或提交的時候需要先登錄,獲取到cookie 或token才能做下一步操作,本次針對登錄后獲取兩個token值作為參數傳入下一個操作(查詢)的說明,如下:

1、先創建登錄login.py文件,代碼如下:

#_*_coding=utf-8
import requests
import json

def get_token():
  url = 'http://XXXXXXXXX:8070/api/gv-crcs/userAuth/login'
  header = {
    "Accept": "application/json, text/plain, */*",
    "Content-Type": "application/json",
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.82 Safari/537.36"
    }
  data = {"account": "guest_Pai_shz","password": "PW_Pai_shz"}
  res = requests.post(url=url, headers=header, data=json.dumps(data))
  tt = json.loads(res.text)
  refreshToken = str(tt["data"]["refreshToken"])
  accessToken = str(tt["data"]["accessToken"])
  return refreshToken,accessToken
print get_token()

 運行后,返回兩個token是一個元組,如果獲取索引值用下標 0開始。

(u'eyJhbGciOiJIUzUxMiJ9.eyJleHAiOjE2MzMyNDYjkuZpwGRrTmfM10mNt_kikT89jGO8a9dMlWIaCA', u'eyJhbGciOiJIUzUxMiJ9.eyJhY2N1cGRhdGVUaW3Mz9GACzUL0b2XpMVRdU0bEG01-HO3Jb4nrpvcllRyuCU8AKFFvOKjz6hg')

2、創建查詢query.py文件,然后把login.py引入,代碼如下:

#_*_coding=utf-8
import requests #引入庫
import login
import json
url = 'http://XXXXXX:8070/api/gv-crcs/deviceInfo/page/info?current=1&size=10&runWorkStatus=-2&pole=&mac=test&groupIdStr=&startTime=&endTime='
header={
  "Accept":"application/json, text/plain, */*",
  "Content-Type":"application/json",
  "User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.82 Safari/537.36",
  "refreshToken":login.get_token()[0],     #由於該函數返回的是元組,所以獲取第一個token值就要取第一個值,其索引為 0;
  "accessToken":login.get_token()[1]    #由於該函數返回的是元組,所以獲取第二個token值就要取第一個值,其索引為 1;
  }
res = requests.get(url=url,headers=header)
print res.content

 運行后,查詢返回結果是:

{"code":200,"message":"操作成功","data":{"records":[{"createTime":null,"updateTime":null,"id":4209,"serialNum":123,"deviceAlarmStatus_text":"正常"}],"total":1,"size":10,"current":1,"searchCount":true,"pages":1}}

 

 -----END------


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM