0
我正試圖將應用程序與Yahoo! api需要oauth認證來訪問受保護的數據。在Yahoo!中使用OAuth API請求(Python)
我使用的是python-oauth2,以下列出了雅虎的Oauth Authorization Flow文檔中列出的步驟。我已經能夠完成所有步驟來與雅虎協商訪問令牌,但似乎無法使用token to authenticate。
這裏是我的代碼:「請提供有效憑據的OAuth oauth_problem =」
import oauth2 as oauth
def list_users(token):
# token is the access token i save in the DB
oauth_token = oauth.Token(token.token, token.secret)
consumer = oauth.Consumer(key=settings.OATH_CONSUMER_KEY,
secret=settings.OATH_SECRET)
client = oauth.Client(consumer, oauth_token)
resp, content = client.request((LIST_USERS_URL), "GET")
return content
然而,所有我能得到的回覆是一個錯誤信息,說signature_invalid「境界=」 yahooapis。 com「」
我在這裏做錯了什麼?到目前爲止,其他一切都很順利。
在調用https://api.login.yahoo.com/oauth/v2/request_auth?之前,您是否運行了「https:// api.login.yahoo.com/oauth/v2/get_request_token」過程?並最終前往'https:// api.login.yahoo.com/oauth/v2/get_token'獲取實際的access_token?一個常見的問題是混淆request_token作爲access_token。 –
是的,我得到請求令牌和訪問令牌並使用訪問令牌進行驗證。 – Cory
如果access_token沒問題,唯一的小錯誤就是在'resp,content = client.request(LIST_USERS_URL),「GET」)中缺少一個「(」。最後要檢查的是[應用範圍](http://developer.yahoo.com/oauth/guide/oauth-scopes.html),註冊期間它是否正確? –