0

所以我正在研究仅使用访问令牌从 api 获取数据。我创建了两个 python 脚本,一个用于获取令牌,另一个用于获取数据。我为这两个脚本创建了一个公共变量“令牌”。但是,当令牌在 15 分钟内到期时,我必须手动重新启动脚本。这个问题有解决方案吗?

授权码:

response = requests.request("POST", url, headers=headers, data=payload)

令牌= response.json()['access_token']

获取样本:

  response2 = requests.request("GET", qurl, headers=headers2, data=payload2)
  r2=response2.json()
  payload={}
  headers = {
  'Host': 'proxy.sample.com',
  'Accept': 'application/vnd.sample.v1+json',
  'Authorization': 'Basic 
  MFQxOE5HYmFsUURGYzBnWkh6b3ZwZVJkN0a1Y3BMQ3w6dnwnamFZa3Ric2p4OUFPUg==',
  'Accept-Encoding': 'br;q=1.0, gzip;q=0.9, deflate;q=0.8',
  'Accept-Language': 'en-US;q=1.0, ar-US;q=0.9',
  'Content-Type': 'application/json',
  'User-Agent': 'SampleApp/3.37.0 (com.sample.mobile.consumer; build:3.#; iOS 
   14.4.1) Alamofire/5.2.2',
   'access_token': token

注意:我不希望一次超过一个脚本实例。

4

1 回答 1

0

只是一个想法,假设您正在使用可以使用except的循环。因此,当错误触发时,代码将使您重新登录并继续

例如

while True:
    try:
        {script here}

    except {ErrorType}:
        print('token expired')
        {relogin code}
        continue
于 2021-03-31T00:25:25.983 回答