我在 facebook 上创建了一个页面,并希望发布到该页面。我的 facebook 用户是该页面的管理员。通过请求“我/帐户”,我取回了该页面的 access_token 和 id,下面的代码发布到该页面。
Facebook* facebook = app.facebook;
NSDictionary* pg = [fbpages objectAtIndex:0]; // page access_token, id and name
NSLog(@"page %@\n",[pg valueForKey:@"name"]);
NSMutableDictionary *params = [[NSMutableDictionary alloc] init];
NSString *graphPath = [NSString stringWithFormat:@"%@/feed", [pg valueForKey:@"id"] ];
[params setObject:[pg valueForKey:@"access_token"] forKey:@"access_token"];
[params setObject:@"This is my message coming from my ios app." forKey:@"message"];
// ----- specify that this is a link ----------------------
[params setObject:@"link" forKey:@"type"];
[params setObject:@"http://www.whatever.com" forKey:@"link"];
// ------ this is the difference between case 1 and 2 -----
[facebook requestWithGraphPath:graphPath andParams:params andHttpMethod:@"POST" andDelegate:app];
现在,奇怪的是,(case1)如果我发布一条简单的消息(没有指定链接部分),它会出现在页面上,因为它是由页面发布的,(case2)但是当链接信息存在时,它会出现作为我的帖子。
case1 -以简单消息的
形式出现在时间线的左侧case2 - 以“其他帖子”的形式出现在时间线的右侧,并且页面未呈现,而仅显示“附件”标志。
除了“type”和“link”这两个参数,case 1 和 2 相同。有人遇到过同样的问题吗?有什么建议么?我究竟做错了什么?我希望我发布到页面的链接与它在用户墙上的显示方式相同。