3

我正在尝试在 iOS 中向 Facebook Graph API 发布高分,但没有运气通过所有令牌内容。我已经修改了 iOS 库以存储应用令牌和用户令牌,并在发布到 时交换了应用令牌https://graph.facebook.com/{my user id}/scores,但我不断收到关于需要用户令牌的错误消息。当我交换用户令牌时,它告诉我我需要一个应用程序令牌。

我认为这可能类似于用户令牌在请求完成之前被切换回,但我已经两次和三次检查请求是否以我收到的应用程序令牌作为access_token发布值返回。根据我一直在做的调试,我需要一个用户访问令牌和一个应用程序访问令牌。

*调用 oauth/access_token 后*

NSString *tempToken = [[[NSString alloc] initWithData:[request responseText] encoding:NSUTF8StringEncoding] autorelease];
//Response is something like "access_token={APP ID}|{SOME HASHED VALUE}"
[fb setAppAccessToken:[tempToken substringFromIndex:13]];
[fb setAccessToken:[fb appAccessToken]];
NSMutableDictionary *scoreParams = [NSMutableDictionary dictionaryWithObjectsAndKeys:@"20", @"score", nil];
[fb requestWithGraphPath:@"{MY USER ID}/scores" andParams:scoreParams andHttpMethod:@"POST" andDelegate:self];
[fb setAccessToken:[fb userAccessToken]];

使用用户访问令牌“(#15)必须使用应用程序访问令牌调用此方法。”

使用 APP ACCESS TOKEN “请求此资源需要用户访问令牌。”

我也使用 publish_actions 作为许可。

4

0 回答 0