我正在编写一个Facebook应用程序,需要代表用户在朋友的墙上发布,但不在画布应用程序的范围内。我有以下内容:
理论上这应该足以做我想做的事。我目前在做什么:
然而,这最终会在朋友的墙上张贴为朋友而不是用户(该应用还具有该朋友的publish_stream权限)。这并不是太意外,因为在这个过程中我没有指定海报应该是谁。
我的问题是:是否可以为代表用户的应用获取OAuth令牌?如果没有,有没有办法在画布应用程序范围之外发布用户的朋友的墙?
谢谢,
Ashoat
答案 0 :(得分:3)
使用以下代码在朋友墙上发帖:
NSMutableDictionary *paramspost = [NSMutableDictionary dictionaryWithObjectsAndKeys:
@"My test app", @"name",
@"http://www.google.com", @"link",
@"FBTestApp app for iPhone!", @"caption",
@"This is a description of my app", @"description",
@"Hello!\n\nThis is a test message\nfrom my test iPhone app!", @"message",
nil];
// Publish.
// This is the most important method that you call. It does the actual job, the message posting.
[ facebook requestWithGraphPath:@"100001433267690/feed" andParams:paramspost andHttpMethod:@"POST" andDelegate:self];
其中“100001433267690”应该是您在Facebook的朋友用户ID
答案 1 :(得分:2)
实际上,我想我已经找到了答案。我认为在新的OAuth API中没有办法实现它,但似乎有一种方法可以使用较旧的REST API。请参阅文档here。
只需将我的问题中的第2步替换为上述文档,仍然使用步骤1中的OAuth令牌,您应该做得很好:)