私は、netflix api と python oauth2 ライブラリの保護された認証に取り組んできました。verifier
署名付きリクエストを作成しても問題ありませんが、ユーザーが netflix アカウントを使用してサインインできるようにするために、access_token を取得しようとするといくつかの問題が発生します。ただし、netflix の認証ページからリダイレクトされた後、次のような結果が得られますhttp://127.0.0.1:5000/authorized_user?oauth_token=some_token&oauth_verifier=
。ベリファイアが空です。
私はライブラリが初めてで、verfier
が存在しない場合に何をすべきかをまったく理解していませんでした。それ以来、ユーザーを netflix サインイン/認証ページに正常にリダイレクトしました。私のエラーは、私が完全には理解していないこのステップに起因すると思います。以下は、私が試みているものの簡略化された(シェル)バージョンです。正しい方向へのプッシュに感謝します.netflixのドキュメントを読み、ライブラリのドキュメントを読みましたが、何をすべきかわかりませんでした.
# Get request token (temporary)
resp, content = client.request(REQUEST_TOKEN_URL, "GET")
if resp['status'] != '200':
raise Exception("Invalid response %s." % resp['status'])
request_token = dict(parse_qsl(content))
print 'Request token'
print ' --> oauth_token = %s' % request_token['oauth_token']
print ' --> oauth_token_secret = %s' % request_token['oauth_token_secret']
print ' --> login_url = %s' % request_token['login_url']
# Redirect to netflix for user authorization
print 'Go to the following link: '
login_url = request_token['login_url']
access_token_url = '%s&oauth_consumer_key=%s' % (login_url, CONSUMER_KEY)
accepted = 'n'
while accepted.lower() == 'n':
accepted = raw_input('Have you authorized me? (y/n) ')
resp, content = client.request(access_token_url, "POST")
token = oauth.Token(request_token['oauth_token'],
request_token['oauth_token_secret'])
client = oauth.Client(consumer, token)
resp, content = client.request(access_token_url, "POST")
access_token = dict(parse_qsl(content))
print "Access Token:"
print " - oauth_token = %s" % access_token['oauth_token']
print " - oauth_token_secret = %s" % access_token['oauth_token_secret']