[英]Python: response.status_code alway return 400 when run with google api
[英]Response status code 400 when using python module Requests with Sitescout API
我有一個客戶端ID和客戶端密鑰,並且正在嘗試通過遵循Sitescout的api docs來生成身份驗證令牌。 我正在使用python模塊的Requests,並且返回了400個狀態代碼,也就是格式錯誤的請求,但我似乎無法弄清楚為什么。
我的代碼:
import requests
url = "https://api.sitescout.com/oauth/token"
headers = {
"Host": "api.sitescout.com",
"Authorization": "Basic YmVldGhvdmVuOmxldG1laW4=",
"Content-Type": "application/x-www-form-urlencoded",
"Accept": "application/json",
"Content-Length": "41"
}
# Do the HTTP request
response = requests.post(url, headers=headers)
response.status_code
那是文檔中提供的偽造的base64 Authorization標頭,因此此代碼段返回401錯誤(也稱為未授權)(我當然有我自己的身份驗證)。
誰能告訴我這是怎么了?
已解決。 我沒有放置grant_type=client_credentials
,添加后返回200。
文檔說:“(可選),您可以添加表單參數范圍以指示您請求訪問的范圍;范圍值必須以空格分隔(例如,STATS AUDIENCES)。” 但是,“&scope = STATS”參數是可選參數,而不是所有參數。 這個例子使我感到困惑。
現在我的代碼讀取
...
params = { "grant_type" : "client_credentials" }
response = requests.post(url, headers=headers, params=params)
...
哪個有效。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.