Диалог Facebook Значение делегата обратного вызова - PullRequest
0 голосов
/ 02 марта 2012

Попытка реализовать Facebook iOS SDK в моем приложении для iphone. Я использую делегат FBDialog, чтобы позволить пользователю войти в систему и получить ответ / обратный вызов с использованием делегата.

Я хотел бы получить код в response_type от пользователя после успешного входа в систему. Может ли кто-нибудь помочь мне здесь или сообщить мне, где взять руководство.

У меня есть следующий код, который реализован:

-(void) login{
self.fb = [[Facebook alloc] initWithAppId:AppID andDelegate:self];


NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
if ([defaults objectForKey:@"FBAccessTokenKey"] 
    && [defaults objectForKey:@"FBExpirationDateKey"]) {
    self.fb.accessToken = [defaults objectForKey:@"FBAccessTokenKey"];
    self.fb.expirationDate = [defaults objectForKey:@"FBExpirationDateKey"];
}

fb.sessionDelegate = self;
NSMutableDictionary *params = [NSMutableDictionary dictionary];
[params setObject:AppID forKey:@"client_id"];
[params setObject:@"code" forKey:@"response_type"];

[fb dialog:@"oauth" andParams:params andDelegate:self];

NSLog(@"Callback: %@", params);
}

Ответы [ 2 ]

1 голос
/ 18 июля 2012

В didReceiveResponse, метод делегата, вызываемый в начале ответа (еще не завершенный и не проанализированный), получает statusCode от объекта ответа.

- (void)request:(FBRequest *)request didReceiveResponse:(NSURLResponse *)response {
    if (200 == [response statusCode]) {
        NSLog(@"Success");
    }    
}  
0 голосов
/ 02 марта 2012

Просто обработайте методы делегата:

/**
 * Your application should implement this delegate to receive session callbacks.
 */
@protocol FBSessionDelegate <NSObject>

@optional

/**
 * Called when the user successfully logged in.
 */
- (void)fbDidLogin;

/**
 * Called when the user dismissed the dialog without logging in.
 */
- (void)fbDidNotLogin:(BOOL)cancelled;

/**
 * Called when the user logged out.
 */
- (void)fbDidLogout;

@end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...