登录获取token,token参数关联至所有请求的请求体内
问题描述:
有些系统接口判断用户是否登录,是校验登录接口成功后传的token值,也就是请求系统所有接口时,前端传参必带登录成功后接口返回的token,后台以此检验是否过期或是否有登录。所有接口都依赖登录成功后的token,那么可将token进行关联。本案例实现请求登录接口,获取token,将token关联至另外的get请求或post请求
实现步骤:
1 import json 2 import requests 3 import urllib.parse 4 import urllib.request 5 6 def doLogin(): 7 url = "https://.../manage/novel/doLogin" 8 # 根据登录接口所需要的参数和方式进行请求 9 values = {'account':'***','pwd':'***','v_token':'***','verify':'***'} 10 values_json = json.dumps(values) 11 # 登录返回token 12 req = requests.post(url, data=values_json) 13 token = req.json()["rel"]["token"] 14 return token 15 16 # 关联doLogin()返回的token,执行get请求或post请求,此例为get请求 17 def getBaselist(): 18 url = "https://.../manage/login/list" 19 values = {} 20 values['token'] = doLogin() 21 data = urllib.parse.urlencode(values) 22 req = url + '?' + data 23 response = urllib.request.urlopen(req) 24 the_page = response.read() 25 print(the_page.decode("unicode_escape")) 26 27 getBaselist()
- 根据登录接口返回的json数据获取token值:req.json()["rel"]["token"]
- 执行结果:返回get请求数据