我有一个iOS应用程序,它通过OAuth 2.0连接到Facebook。我想发一个POST请求,它在iOS中实现了相当于这个代码:
curl -F 'access_token=...' \
-F 'message=Hello. I like this new API.' \
https://graph.facebook.com/[USER_ID]/feed
我在网上发现了一个很好的教程,我遵循了所有说明,但我仍然可以让我的POST请求工作。这是我的代码:
NSString *post = post_text.text;
NSData *postData = [post dataUsingEncoding:NSASCIIStringEncoding allowLossyConversion:YES];
//NSString *postLength = [NSString stringWithFormat:@"%d", [postData length]];
NSMutableURLRequest *request = [[NSMutableURLRequest alloc] init];
NSString *ready_post = [NSString stringWithFormat:@"https://graph.facebook.com/1313573269/feed?message=%@&access_token=CAACEdEose0cBAHgdZAon2EZBZCzjoLkhg7jrqvZAbliuoOQ2E2Exc4rZCAxPzeVEADwnQaNLYuG16Gq6q6LLLLLLLLVQ7LZAncXCc53qE2iyzleZAPXGajsgjnBTuo6YdJCZAxVGIYYD8sZCgQ9ypZCo0iOZBNuyrechBfee2yptlK9tmgdosZA7wrKg8ZD", postData];
[request setURL:[NSURL URLWithString:ready_post]];
[request setHTTPMethod:@"POST"];
[request setValue:postLength forHTTPHeaderField:@"Content-Length"];
[request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"];
[request setHTTPBody:postData];
正如您所看到的,我正在对访问令牌进行硬编码,暂时只是作为测试。但我似乎无法让我的应用程序实际向Facebook发布任何内容。
谢谢,Dan。
答案 0 :(得分:1)
您尝试将JSON
发布到GraphAPI - 您无法做到。
而不是那样,您必须在发布时使用参数(query string
或HTTP request parameters
)。
请参阅:Publish to Feed。