как получить токен доступа в python - PullRequest
0 голосов
/ 08 сентября 2018

Я хочу сделать api-вызов rest и получить токен доступа, и этот токен будет там в течение 30 минут. Снова мне нужно обновить этот токен.

Я не понимаю, как получить токен доступа, пробовал многочисленные фрагменты кода.

Пример токена доступа будет таким, как показано ниже: KkcwAIyUm6XGbGUA0wejna6_8kk3Zuo66BigYo3gAGI.

URL-адрес, используемый в post man для получения токена доступа вручную: [https://xxx.xxx.com/restapi/vc/authentication/sessions/login?user.login=s_user&user.password=xxx]

Тогда мне нужно использовать этот токен доступа, указанный ниже, для получения данных: [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']['$']

Когда я жестко кодирую токен доступа, полученный от почтальона, я могу получить результаты, используя приведенный ниже код, но я не понимаю, как сгенерировать токен доступа в python, а затем использовать его, обновлять его, когда у меня истекает

Спасибо вам

1 Ответ

0 голосов
/ 08 сентября 2018

Данные токена, вероятно, находятся в переменной req первого фрагмента (который фактически является ответом).

Обычно данные ответов представлены в формате JSON, который можно декодировать аналогично второму фрагменту. В случае формата XML доступно несколько синтаксических анализаторов, например, xml.etree.ElementTree из стандартной библиотеки Python.

Подробные сведения о том, как токен сохраняется в данных и как его восстановить, должны быть предоставлены поставщиком REST API.

...