我正在为 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>
或者上述消息的变体。对我做错了什么有什么想法吗?
最佳答案
我明白了。您所要做的就是将 POST 数据放入 NSMutableURLRequest
的 HTTP 主体中。使用[request setHTTPBody:@"NSString of the POST data"];
而不是上面的,从技术上讲,这是一个 GET 请求。我发现这很令人困惑,因为这种方法适用于使用 API 登录 Reddit。事实证明,您可以通过 GETting 登录,但必须 POST 才能共享新链接。
关于objective-c - 提交新故事时为"You broke Reddit",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9918213/