使用OAuth在Tumblr上发布图像

时间:2012-07-29 12:43:33

标签: objective-c oauth tumblr

我正在尝试使用OAuth在Tumblr上发布图片。我正在使用Objective C,但一般的解决方案也会非常有用。

我设法发布在线图像(使用“source”参数)。但是,我无法从客户端发布图像(使用“data”参数),有些问题让我感到困惑。

1)我应该使用“multipart / form-data”还是“application / x-www-form-urlencoded”?我在这个问题上看到了相互矛盾的说法。

2)我应该把什么放在我的帖子中?我应该把什么放在我的基线中?根据oAuth规范,如果我使用“multipart / form-data”,那么我不需要将我添加到帖子体的参数(如“type”和“caption”)添加到基本字符串,但即使当我成功发布“source”时,它只有在我将参数添加到基本字符串时才有效。

3)我应该以什么格式将图像添加到身体?如果我还需要将它添加到基本字符串中,那么我应该以什么格式添加它?

谢谢!

1 个答案:

答案 0 :(得分:0)

Tumblr的问题是"不寻常" OAuth的实施(OAuth issues)。它不太可能与#34; old" OAuth(来自code.google.com/p/oauth/)。我自己最终使用了其中一种解决方案:crossbreeding OAuth with ASIFormDataRequest,但它不太可能适用于多个图像或集成TumblrUploadr。此外,Tumblr可能会更好地使用新的OAuth库(来自here) ,但如果你使用它肯定会与ShareKit发生冲突。

关于你的问题:

  1. TumblrUploadr使用 application / x-www-form-urlencoded 所以它 很可能就是这个。
  2. 上述任何解决方案都应该 只需传递你的图像的UIImageJPEGRepresentation。 TumblrUploadr有 它自己的URL编码和ASIFormDataRequest,我不确定。
  3. URL编码的二进制数据,如Tumblr API中所述。我自己 没有深入调查ASIFormDataRequest,所以我不确定你是否 需要将其添加到基本字符串。