如何在python中获取访问令牌

问题描述 投票:0回答:1

我想做一个休息api调用并获得访问令牌,并且访问令牌将在那里持续30分钟。我再次需要刷新该令牌。

我没有得到如何获取访问令牌,尝试了大量的代码片段。

示例访问令牌如下所示:KkcwAIyUm6XGbGUA0wejna6_8kk3Zuo66BigYo3gAGI。

post man中用于手动获取访问令牌的URL:[https://xxx.xxx.com/restapi/vc/authentication/sessions/login?user.login=s_user&user.password=xxx]

然后我需要在下面的URL中使用此访问令牌来获取数据:[https://xxx.xxx.com/restapi/vc/messages/id/879997?restapi.session_key=kEf-mTzu6Xnsa5HQKt8ml-9Wc-HX3wHLlphB2oQkrxE.&restapi.response_format=json]

任何人都可以帮助python代码

代码我正在尝试获取访问令牌:

    import requests
import json

with requests.Session() as session:
    req = requests.get(r'https://xx.xx.com/restapi/vc/authentication/sessions/login?user.login=s_user&user.password=xxxx')

print(req.content)

输出:b'\ n F0JQfxkxxwl-O9-cQKtJhdrNRKJg3ENLd_SckmBIqU0。\ n \ n'

用于来自邮递员的硬编码访问令牌的代码:

for m in data_list:
    response = requests.get("https://xxx.xx.com/restapi/vc/messages/id/"+m+"?restapi.session_key=kEf-mTzu6Xnsa5HQKt8ml-9Wc-HX3wHLlphB2oQkrxE.&restapi.response_format=json")
    data = response.json()
    cleaned_text=cleanhtml(data['response']['message']['body']['$'])
    body_list.append(cleaned_text)
    #print(cleaned_text)
    #print ('---------BODY ENDS HERE--------')
    tz_subject = data['response']['message']['subject']['$']

当我硬编码我从post man获得的访问令牌时,我能够使用下面的代码获取结果,但我没有得到如何在python中生成访问令牌然后使用它,当我到期时刷新它

谢谢

python rest api token access
1个回答
1
投票

令牌数据可能位于第一个片段的req变量中(实际上是一个响应)。

通常,响应数据采用JSON格式,可以采用与第二个片段类似的方式进行解码。在XML格式的情况下,有几种可用的解析器,例如,来自Python标准库的xml.etree.ElementTree

详细说明如何在数据中保存令牌以及如何重新生成令牌应由REST API的提供者提供。

© www.soinside.com 2019 - 2024. All rights reserved.