2013-02-17 8 views
5

Python 2.7でリクエストを使用して、APIを使用して以前にアップロードされた画像の説明を変更しようとしています。Imgur APIが既存の画像の説明を変更しない

r = requests.post('https://api.imgur.com/3/image/'+submission['id'], \ 
       headers={'Authorization':'Bearer '+access_token}, \ 
       data={'description':'blahblahblah'}, verify=False) 

私は何を見返りに取得すると、このされています:だから、私の知る限りのOAuthを見ることができるようにうまく働いたが、API自体はあるさ

{u'status': 200, u'data': False, u'success': True} 

Imgur's API manualによると、私はこれを使用しました「False」に戻り、説明は変更されません。 私は、この特定のエンドポイントに関するどこにも指針を見つけることはできません。何か案は?

+3

にあなたは200の 'status'コードを持っている、と' SUCCESS'が 'true'をので、限りImgurが懸念しているように、あなたのAPIコールは成功しました。何が問題になっても、Imgur API、*要求*やPythonではありません。 –

+1

あなたが見ることができる唯一のことは、おそらく '.json'拡張子を使うことなので、' 'https://api.imgur.com/3/image/{}.json'.format(submission ['id']) 'をURLとして使用します。 –

+0

それ以外の場合は、Imgur GETレスポンスが大量にキャッシュされていることを考慮して、キャッシュ結果がしばらくの間提供されていると、説明を設定した結果がしばしば非表示になる可能性があります。必要がある場合は、ブラウザのキャッシュをクリアしてください。 –

答えて

0

たぶん(あなたは1を作成していない、既存のリソースを変更する)代わりにrequests.postのrequests.putてみ

0

しようとしたとき、私は「成功」のメッセージを取得し、(Perlを使用して)これと同じ問題を抱えていましたimgur API v3を使って実際に変更が行われていなくてもtitle/descriptionを変更することができました。問題が発見されたため、手動で「Content-Type:application/json」ヘッダーを設定する必要がありました。そうしなければ200 /成功メッセージが返されたが、実際の変更はなかった。同じ問題により、修正されるまで新しいAPIで画像をアップロードすることができませんでした。

0

私はそれが古い質問だと知っていますが、おそらく誰かを助けるでしょう。私にとってはうまくいく。

ヘッダを追加します。

'Content-Type': 'application/json' 

そしてrequests.post使用jsonの代わりdata

r = requests.post(url, 
    headers={'Authorization':'Bearer '+access_token, 'Content-Type': 'application/json'}, 
    json={'description':'blahblahblah'}, verify=False) 
関連する問題