提交新故事时“你打破了Reddit”

时间:2012-03-29 02:11:31

标签: objective-c iphone api reddit

我正在为iPhone制作一个Reddit应用程序,部分应用程序的功能需要向Reddit发布新故事(即链接或文本)。

当我尝试这个时,我发出以下请求并根据过去的登录尝试设置请求的cookie:

http://www.reddit.com/api/submit/?uh=%@&text=TestofAPISubmitonapigee&kind=self&sr=redditdev&title=APISubmitTest&r=redditdev&api_type=json

(其中%@被用户modhash替换,类似于aa4aaaa3aaaaaa88ea8b19639c389521a813d21cb3e5688dbf)

但是,在提交请求后,我收到了此回复:

<html>
  <head>
    <title>reddit broke!</title>
  </head>
   <body>
    <div style="margin: auto; text-align: center">
      <p>
        <a href="/">
          <img border="0" src="http://www.redditstatic.com/youbrokeit1.png" alt="you broke reddit" />
        </a>
      </p>
      <p>
        I've made a huge mistake!
      </p>
  </body>
</html>

或上述消息的变体。对我做错了什么的想法?

1 个答案:

答案 0 :(得分:1)

我明白了。您所要做的就是使用NSMutableURLRequest而不是上面的内容将POST数据放在[request setHTTPBody:@"NSString of the POST data"];的HTTP正文中,这在技术上是一个GET请求。我发现这令人困惑,因为这种方法适用于使用API​​登录Reddit。事实证明您可以通过GETting登录,但您必须POST才能共享新链接。