【问题标题】:Facebook Error Invalid_access tokenFacebook 错误 Invalid_access 令牌
【发布时间】:2016-01-28 06:03:15
【问题描述】:
  1. 在 ios 9.2 中,当我登录 facebook 时出现错误 Invalid_access token。
  2. 但是当我使用应用注册帐户登录时,它会成功登录 facebook。
  3. 我的图片在这里。

MYviewController.m 文件

-(void)loginButtonClicked
{
   FBSDKLoginManager *login = [[FBSDKLoginManager alloc] init];
    login.loginBehavior = FBSDKLoginBehaviorWeb;
   [login logInWithReadPermissions:@[@"email"] fromViewController:self handler:^(FBSDKLoginManagerLoginResult *result, NSError *error) {
        if (error) {
            // Process error
        } else if (result.isCancelled) {
            // Handle cancellations
        }
        else {

            if ([result.grantedPermissions containsObject:@"email"]) {

                if ([FBSDKAccessToken currentAccessToken]) {
                   [[[FBSDKGraphRequest alloc] initWithGraphPath:@"me" parameters:@{@"fields": @"first_name, last_name, picture.type(normal), accounts{username},email, gender, locale, timezone, about"}]
                     startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {
                         if (!error) {
                             NSLog(@"fetched user:%@", result);

                            NSString *fbAccessToken = [FBSDKAccessToken currentAccessToken].tokenString;
                            NSLog(@"fbAccessToken=>%@", fbAccessToken);

                         }
                     }];
                }
            }
        }
    }];
}

MYAppdelegate.m 文件。

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    [[FBSDKApplicationDelegate sharedInstance] application:application
                             didFinishLaunchingWithOptions:launchOptions];
    return YES;
}
- (BOOL)application:(UIApplication *)application
            openURL:(NSURL *)url
  sourceApplication:(NSString *)sourceApplication
         annotation:(id)annotation {
    return [[FBSDKApplicationDelegate sharedInstance] application:application
                                                          openURL:url
                                                sourceApplication:sourceApplication
                                                       annotation:annotation];
}
- (void)applicationDidBecomeActive:(UIApplication *)application {

    [FBSDKAppEvents activateApp];
}

【问题讨论】:

    标签: ios objective-c iphone facebook facebook-access-token


    【解决方案1】:

    试试这个

    -(void)loginButtonClicked
    {
    
      /*********  logout the current session ************/
       FBSDKLoginManager *login = [[FBSDKLoginManager alloc] init];
      [login logOut];
      [FBSDKAccessToken setCurrentAccessToken:nil];
      [FBSDKProfile setCurrentProfile:nil];
    /*********  logout the current session ************/
    
       /*********  start the new session for login ************/
    
      // FBSDKLoginManager *login = [[FBSDKLoginManager alloc] init];
        login.loginBehavior = FBSDKLoginBehaviorWeb;
       [login logInWithReadPermissions:@[@"email"] fromViewController:self handler:^(FBSDKLoginManagerLoginResult *result, NSError *error) {
            if (error) {
                // Process error
            } else if (result.isCancelled) {
                // Handle cancellations
            }
            else {
    
                if ([result.grantedPermissions containsObject:@"email"]) {
    
                    if ([FBSDKAccessToken currentAccessToken]) {
                       [[[FBSDKGraphRequest alloc] initWithGraphPath:@"me" parameters:@{@"fields": @"first_name, last_name, picture.type(normal), accounts{username},email, gender, locale, timezone, about"}]
                         startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {
                             if (!error) {
                                 NSLog(@"fetched user:%@", result);
    
                                NSString *fbAccessToken = [FBSDKAccessToken currentAccessToken].tokenString;
                                NSLog(@"fbAccessToken=>%@", fbAccessToken);
    
                             }
                         }];
                    }
                }
            }
        }];
    }
    

    【讨论】:

      【解决方案2】:

      转到developers.facebook.com ->在该设置中添加联系电子邮件和单点登录是

      然后点击App review ->您想让这个应用程序及其所有实时功能向公众开放吗? 这应该是。

      【讨论】:

        猜你喜欢
        • 2012-09-30
        • 2011-11-29
        • 1970-01-01
        • 2011-12-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多