我想在我的Django應用程序中的Rdio API上進行授權調用。我一直在看下面的教程到目前爲止得到它成立:Django中的Oauth 1.0a
http://www.rdio.com/developers/docs/web-service/oauth/ref-oauth1-overview
在頁面底部的代碼工作正常,我:我可以請求令牌,使用授權用戶PIN碼,然後使用新的訪問令牌撥打電話。
但是,我想執行回調,以便用戶可以登錄並返回到我的網站,以便我可以使用其帳戶進行授權請求。我現在有一個網頁的鏈接批准的應用程序,從哪裏得到該鏈接的功能,像這樣:
def get_auth_url():
client = oauth.Client(consumer)
response, content = client.request('http://api.rdio.com/oauth/request_token', 'POST', urllib.urlencode({'oauth_callback': 'http://localhost:8080/my_page/'}))
parsed_content = dict(cgi.parse_qsl(content))
request_token = oauth.Token(parsed_content['oauth_token'], parsed_content['oauth_token_secret'])
sURL = '%s?oauth_token=%s' % (parsed_content['login_url'], parsed_content['oauth_token'])
return sURL
這是正常的,而當我點擊這個鏈接,我去一個網頁,要求授權我考慮這個應用程序。但是,我需要從我的用戶剛授權的請求令牌中獲取訪問令牌。來自授權頁面的回調給出了我的oauth_verifier
和oauth_token
參數,但構造請求令牌需要oauth_token
和oauth_token_secret
。我在第一次電話會議上有祕密,但在第二次電話會議中無法再次獲得,祕書說我不應該將祕密存放在任何可以訪問的地方,也不應該通過請求傳輸。由於這些是兩個不同的請求,我無法考慮在哪裏存儲持久性請求令牌。如何獲得第二個請求上的oauth_token_secret
,以便我可以獲取訪問令牌?