對於一個項目的人給了我這個數據,我在郵差已經用於測試目的:我怎樣才能得到的oauth2的access_token使用Python
在郵差這個完美的作品。
驗證網址:https://api.example.com/oauth/access_token
訪問令牌網址:https://api.example.com/access_token
客戶端ID:ABCDE
客戶端的祕密:12345
令牌名稱:的access_token
格蘭特類型:客戶端憑證
所有我需要找回是訪問令牌。
一個我得到了訪問令牌,我可以繼續。
我已經嘗試了幾個Python包和一些自定義代碼,但不知何故,這個看似簡單的任務開始創建一個真正的頭痛。
一爲例我想:
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"]
如果這樣的工作,我應該怎麼投入code
參數
我真的希望有人可以幫助我在這裏。
在此先感謝。
燦你請稍微解釋一下你的代碼?我似乎無法得到它的工作。提前致謝! – Rhyuk