fc2ブログ

flickrにOAuthで写真投稿

flickrにOAuthの認証で写真を投稿しようとして、ここ1週間ほどハマッテいたので、備忘的に。


トークンの取得や基本情報へのアクセスなんかは通常のOAuthの手法で全く問題なかったのだけども、何故か写真の投稿が全くダメ。

結局、APIドキュメントのUploading Photosや、そこからリンクされているFlickr Authentication API、ってのは古いAPI認証(都度ユーザー確認を行う)のことで、OAuthのことではなかったという・・・。
最初にここを見てしまったのが勘違い、というか迷走の始まりでしょうか。


ただ、気を取り直してOAuth通常手法でアクセスしようとしても、401やら「No photo specified」が頻発。
特に、POSTのコンテンツタイプを「application/x-www-form-urlencoded」ではなく「multipart/form-data」にすると(画像をアップする以上これしかないのですが)まったく認証が通らない。


で、色々検索や試行錯誤をして見つけた有用な情報が以下。
How to upload a photo using OAuth authentication?
OAuth Upload, signature_invalid error where signed string matches debug_sbs

まとめると、
1)OAuthの認証情報はAuthorizationヘッダに格納すること。その際、写真を表す「photo」は入れない
2)OAuth関連の情報はPOSTの情報に入れてはダメ
ということでした。

これでようやく画像の投稿が出来るようになりました、と。
ただ、タイトルやタグなんかを絡めてくるとまた話がややこしそうね。
エンコードの問題なのか、photoと同様に扱いを変える必要があるのか、まだ探り切れていません。


ついでに。

Authorizationヘッダについて(OAuth認証全般についても)は以下のYahooの解説がわりやすいです。
OAuthにおけるリクエスト方法

realmは空で大丈夫でした。
関連記事

テーマ : プログラミング
ジャンル : コンピュータ

コメントの投稿

非公開コメント

プロフィール

izumi

Author:izumi
東京都北区でフリーエンジニアしてます。
写真をメインに。
若干鉄分多め、かな(笑)
IT関係やお仕事の話も歓迎です。


枚数だけは撮っているので
てつまる
も宜しければ。

てつまる
鉄道写真共有サイト「てつまる」
最新記事
スポンサー
カテゴリ
月別アーカイブ
RSSリンクの表示
ブロとも申請フォーム

この人とブロともになる

QRコード
QR