Как я могу получить доступ oauth2 access_token с помощью PythonPython

Программы на Python
Ответить
Anonymous
 Как я могу получить доступ oauth2 access_token с помощью Python

Сообщение Anonymous »

Для проекта кто -то дал мне эти данные, которые я использовал в почтальстве для целей тестирования: < /p>

В почтальстве это работает отлично. < /p>

url url: https://api.example.com/oauth/access_token

URL -адрес url токена доступа: https://api.example.com/access_token

идентификатор клиента: ABCDE

Client Secret: 12345

Имя токена: access_token

Тип гранта: клиентские учетные данные < /p>
Все, что мне нужно, это вернуть токен доступа. < /p>

Однажды я получил токен доступа, который я могу продолжить. < /p>

Я уже пробовал несколько пакетов Python и несколько пользовательских кодов, но каким -то образом эта, казалось бы, простая задача начинает создавать реальную головную боль. < /p>

Один экфир я попробовал: < /p>

Код: Выделить всё

import httplib
import base64
import urllib
import json

def getAuthToken():
CLIENT_ID = "abcde"
CLIENT_SECRET = "12345"
TOKEN_URL = "https://api.example.com/oauth/access_token"

conn = httplib.HTTPSConnection("api.example.com")

url = "/oauth/access_token"

params = {
"grant_type": "client_credentials"
}

client = CLIENT_ID
client_secret = CLIENT_SECRET

authString = base64.encodestring('%s:%s' % (client, client_secret)).replace('\n', '')

requestUrl = url + "?" + urllib.urlencode(params)

headersMap = {
"Content-Type": "application/x-www-form-urlencoded",
"Authorization": "Basic " + authString
}

conn.request("POST", requestUrl, headers=headersMap)

response = conn.getresponse()

if response.status == 200:
data = response.read()
result = json.loads(data)

return result["access_token"]
Тогда у меня есть вот это:

Код: Выделить всё

import requests
import requests.auth

CLIENT_ID = "abcde"
CLIENT_SECRET = "12345"
TOKEN_URL = "https://api.example.com/oauth/access_token"
REDIRECT_URI = "https://www.getpostman.com/oauth2/callback"

def get_token(code):
client_auth = requests.auth.HTTPBasicAuth(CLIENT_ID, CLIENT_SECRET)
post_data = {"grant_type": "client_credentials",
"code": code,
"redirect_uri": REDIRECT_URI}
response = requests.post(TOKEN_URL,
auth=client_auth,
data=post_data)
token_json = response.json()
return token_json["access_token"]
Если это сработает, что мне следует поместить в параметр кода

Я очень надеюсь кто-нибудь может мне помочь здесь.

Заранее спасибо.

Подробнее здесь: https://stackoverflow.com/questions/367 ... ing-python
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»