Как правильно использовать токены приложений и пользователей с помощью API Score Facebook на iOS - PullRequest
3 голосов
/ 19 ноября 2011

Я пытаюсь опубликовать высокий балл в Facebook Graph API в iOS, но безуспешно, чтобы пройти через все токены. Я изменил библиотеку iOS, чтобы хранить токен приложения и токен пользователя, и меняю токен приложения при создании сообщения на https://graph.facebook.com/{my user id}/scores, но я продолжаю получать сообщение о необходимости получения токена пользователя. Когда я меняю токен пользователя, он говорит, что мне нужен токен приложения.

Я подумал, что это может быть что-то вроде того, как пользовательский токен снова включается до завершения запроса, но я дважды и трижды проверил, что запрос возвращается с токеном приложения, который я получил в качестве значения access_token post. В соответствии с отладкой, которой я занимаюсь, мне нужны и токен доступа пользователя, и токен доступа к приложению.

* После вызова 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]];

With USER ACCESS TOKEN "(# 15) Этот метод должен вызываться приложением access_token."

С APP ACCESS TOKEN "Для запроса этого ресурса требуется маркер доступа пользователя."

Я также использую publish_actions в качестве разрешения.

...