2015-10-11 4 views
0

Мое приложение получает сообщение об ошибке при создании запроса GET API Facebook для конечной точки.Facebook Graph GET Request

Вот мой код:

-(void) updateUserInformation{ 
    FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc] initWithGraphPath:@"/me:" parameters:@{@"fields": @"id, name, email, user_birthday"}]; 

    [request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) { 
     if(!error){ 
      NSDictionary *userDictionary = (NSDictionary *)result; 
      NSMutableDictionary *userProfile = [[NSMutableDictionary alloc] initWithCapacity:8]; 

      if (userDictionary[@"name"]) { 
       userProfile[@"name"] = userDictionary[@"name"]; 
      } 

      if (userDictionary[@"first_name"]) { 
       userProfile[@"first_name"] = userDictionary[@"first_name"]; 
      } 

      if (userDictionary[@"location"][@"name"]) { 
       userProfile[@"location"] = userDictionary[@"location"][@"name"]; 
      } 

      if (userDictionary[@"gender"]) { 
       userProfile[@"gender"] = userDictionary[@"gender"]; 
      } 

      if (userDictionary[@"birthday"]) { 
       userProfile[@"birthday"] = userDictionary[@"birthday"]; 
      } 
      if (userDictionary[@"interested_in"]) { 
       userProfile[@"interested_in"] = userDictionary[@"interested_in"]; 
      } 

      [[PFUser currentUser] setObject:userProfile forKey:@"profile"]; 

      [[PFUser currentUser] saveInBackground]; 

     }else { 
      NSLog(@"Error in Facebook Request %@", error); 
     } 

    }]; 
} 

Там ошибка, я получаю:

2015-10-11 14:30:59.306 MatchedUp[2358:139193] Error in Facebook Request Error Domain=com.facebook.sdk.core Code=8 "(null)" UserInfo={com.facebook.sdk:FBSDKGraphRequestErrorGraphErrorCode=803, com.facebook.sdk:FBSDKGraphRequestErrorParsedJSONResponseKey={ 
    body =  { 
     error =   { 
      code = 803; 
      "fbtrace_id" = "CfGbwnx4/B9"; 
      message = "(#803) Some of the aliases you requested do not exist: me:"; 
      type = OAuthException; 
     }; 
    }; 
    code = 404; 
}, com.facebook.sdk:FBSDKGraphRequestErrorHTTPStatusCodeKey=404, com.facebook.sdk:FBSDKErrorDeveloperMessageKey=(#803) Some of the aliases you requested do not exist: me:, com.facebook.sdk:FBSDKGraphRequestErrorCategoryKey=0} 

Я не очень уверен, что значит эта ошибка. В нем говорится: «Некоторые из запрошенных вами псевдонимов не существуют: me:» означает ли это, что словарь результатов в завершенииHandler не содержит некоторую информацию для конечной точки me? Любая помощь будет оценена по достоинству. Спасибо!

ответ

1

Попробуйте изменить путь к графику @"/me:" только @"me".

Удачи вам!

+0

OMG Большое спасибо! Я не могу поверить, что это была такая простая ошибка, ха-ха ... Иногда это просто требует еще одной пары глаз, чтобы поймать эти ошибки :) – CapturedTree

+0

Вы знаете, как я могу получить больше информации о пользователе? Я получаю только имя и идентификатор в результате, который возвращается в обработчик завершения. Мне также понравится электронная почта, день рождения, пол, заинтересованность и т. Д. – CapturedTree

+0

@ 1290: вам нужно попросить дополнительные поля, см. Http://stackoverflow.com/a/32585470/1427878 – CBroe