2012-04-07 8 views
3

これはかなり簡単なはずですが、私は失敗点を見つけることができません。うまくいけば誰かが私にそれを指摘することができます。gautub api v3でのoauthフローが動作しない

まずはhttps://github.com/login/oauth/authorize?client_id=CLIENT_ID&scope=gistに行き、これが私にコードを返します。それから私はこれを行う:私は私のテストユーザーに行くとき

import requests, json 

client_id = XXXX 
client_secret = XXXX 
code = XXXX 

r = requests.post(
    'https://github.com/login/oauth/access_token', 
    data=json.dumps({ 
     'client_id':client_id, 
     'client_secret':client_secret, 
     'code':code 
    }) 
r.content # this gives me a 404 header 

許可として、それは私を示しており、私のアプリは、一人のユーザーを持つものとして示しているが、私はアクセストークンを持っていません。

私は間違っています。

答えて

12

これは本当に簡単な問題でしたが、同じエラーが発生した場合はここに残しておきます。

疑問がある場合は、手動でヘッダを定義してください。だから、必要があります。その後、

header = {'content-type':'application/json'} 

とヘッダに渡します

r = requests.post(
    'https://github.com/login/oauth/access_token', 
    data=json.dumps({ 
     'client_id':client_id, 
     'client_secret':client_secret, 
     'code':code 
    }), 
    headers=header 
) 

私にとって、これは問題を解決しました。

関連する問題