わかりました。これにはいくつかの部分があり、他の人が同様の質問をしているのを見てから、私は全長になるでしょう:
まず、OAuthConsumerの古いバージョンを使用していました。 linked on Google Codeのバージョンを使用する代わりに、より新しいバージョンのfrom githubを使用する必要があります。これには、複数の文字列を含むマルチパートフォームを送信する手段が含まれているためです。
//Setup the request...
[request setParameters:params];
[request attachFileWithName:@"data" filename:@"photo.jpg" contentType:@"image/jpeg" data:dataProp.data];
//Setup the fetcher and send the request...
これは、すべての他の変数を入れ、唯一oauth_...
- 変数を含んでいるのOAuth署名を生成します:私は完全に間違っていないよ場合
さて、あなたは理論的に今やるべきことは以下のとおりです。マルチパート形式に変換します。これはどのようにしなければならないのかであり、文書によれば、あなたはうまくいくはずです。残念ながら、あなたはそうではありません、tumblrは401エラーを返します。ここで
は、あなたが本当に何をすべきかです:
//Setup the request...
[request setParameters:params];
[request prepare]; //Whaaaat?
[request attachFileWithName:@"data" filename:@"photo.jpg" contentType:@"image/jpeg" data:dataProp.data];
//Setup the fetcher, make sure "prepare" isn't called again, send the request...
これは動作します...繰り返しますが、私はこれはOAuthのは、これを処理することになっているかではないことをかなり確信しているが、少なくとも、それが動作します。
私はこれ以上投票することができればいいと思っています... – coneybeare
私のための鍵は、 "確かめてください"という準備が "もう一度呼ばれない"ことでした。 – Alex
素晴らしい!これは、Mac OS Xを使ってEtsy APIにアクセスする私の仕事でした。 –