В почтальстве это работает отлично. < /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
Мобильная версия