我正在为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>
或上述消息的变体。对我做错了什么的想法?
答案 0 :(得分:1)
我明白了。您所要做的就是使用NSMutableURLRequest
而不是上面的内容将POST数据放在[request setHTTPBody:@"NSString of the POST data"];
的HTTP正文中,这在技术上是一个GET请求。我发现这令人困惑,因为这种方法适用于使用API登录Reddit。事实证明您可以通过GETting登录,但您必须POST才能共享新链接。