Запрос пользовательских данных Facebook через новую социальную структуру iOS6

Я пытаюсь запросить информацию о пользователе, используя новый API интеграции Facebook в iOS 6. Это код, который я использую, и он практически идентичен тому, что они продемонстрировали на WWDC :

{
NSDictionary *parameters = @{};
NSURL *url = [NSURL URLWithString:@"https://graph.facebook.com/me"];
SLRequest *request = [SLRequest requestForServiceType:SLServiceTypeFacebook
                                        requestMethod:SLRequestMethodGET
                                                  URL:url
                                           parameters:parameters];
request.account = self.account;
[request performRequestWithHandler:^(NSData *responseData, NSHTTPURLResponse *urlResponse, NSError *error) {
    NSLog(@"Facebook request received, status code %d", urlResponse.statusCode);
    NSString *response = [[NSString alloc] initWithData:responseData encoding:NSUTF8StringEncoding];
    NSLog(@"Response data: %@", response);
    dispatch_async(dispatch_get_main_queue(), ^{

    });
}];
}

. Проблема в том, что я получаю код ошибки 2500 от Facebook :«Токен активного доступа должен использоваться для запроса информации о текущем пользователе». Если я изменю запрос на https://graph.facebook.com/[идентификатор facebook], он будет работать нормально. Я предполагаю, что проблема в том, что iOS передает токен доступа приложения вместо токена доступа пользователя при отправке запроса через requestForServiceType. Я просто не знаю, как это исправить. Очевидно, что предвидеть и жестко кодировать идентификаторы Facebook моих пользователей — не вариант. Какие-либо предложения?

8
задан Kevin Reynolds 30 June 2012 в 01:27
поделиться