以下解決方案爲我工作。但是,如果您要存儲永久性訪問令牌,則需要確保用戶不會刪除應用程序權限,否則會出現錯誤。你可以用requestWithGraphPath - >「me/permissions」來檢查它。
應用INIT功能(例如中:didFinishLaunchingWithOptions /或您初始化你的Facebook對象這就需要將fbsessiondelegate在平均時間)
...
NSArray* permissions = [[NSArray alloc] initWithObjects:@"user_likes",@"offline_access", nil];
FBSession*oursession = [[FBSession alloc] initWithPermissions:permissions];
...
FBDidLogin功能:
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[defaults setObject:[facebook accessToken] forKey:@"FBAccessTokenKey"];
[defaults setObject:[facebook expirationDate] forKey:@"FBExpirationDateKey"];
[defaults synchronize];
實施例圖api請求功能:
NSUserDefaults *userDefaults =[NSUserDefaults standardUserDefaults];
NSString *key = [userDefaults stringForKey:@"FBAccessTokenKey"];
FBRequest* ourcon = [[FBRequest alloc] initWithSession:oursession graphPath:@"me/likes" parameters:params HTTPMethod:@"GET"];
[ourcon startWithCompletionHandler: ^(FBRequestConnection *connection, id<FBGraphUser> result, NSError *error){
if(error)
{
//NSLog(error.code);
return;
}
NSArray* collection = (NSArray*)[result data];
NSLog(@"You have %d like", [collection count]);
NSDictionary* name = [collection objectAtIndex:14];
NSLog(@"Like Name: %@", [name objectForKey:@"name"]);
}];
所以,我需要在我的會議代表內創建自己的會話。我如何才能創建一個新的會話對象,只是使用授權方法的結果的令牌? –
我想出瞭如何做到這一點。無論如何,通過減輕我的負擔。 –