Ios Facebook SDK好友列表请求
当我尝试加载我所有的facebook好友时,我收到一个时间请求超时错误 我有一个开放的州。 我的代码: 错误消息:Ios Facebook SDK好友列表请求,ios,facebook,facebook-ios-sdk,Ios,Facebook,Facebook Ios Sdk,当我尝试加载我所有的facebook好友时,我收到一个时间请求超时错误 我有一个开放的州。 我的代码: 错误消息: Error: Error Domain=com.facebook.sdk Code=5 "The operation couldn’t be completed. (com.facebook.sdk error 5.)" UserInfo=0x1d1e3a30 {com.facebook.sdk:ErrorInnerErrorKey=Error Domain=NSURLErrorD
Error: Error Domain=com.facebook.sdk Code=5 "The operation couldn’t be completed. (com.facebook.sdk error 5.)" UserInfo=0x1d1e3a30 {com.facebook.sdk:ErrorInnerErrorKey=Error Domain=NSURLErrorDomain Code=-1001 "The request timed out." UserInfo=0x1d1e16a0 {NSErrorFailingURLStringKey=https://graph.facebook.com/me/friends?sdk=ios&fields=id%2Cname%2Cusername%2Cfirst_name%2Clast_name&migration_bundle=fbsdk%3A20130120&format=json&access_token=CAAHyDtIdIi0BAM6ZCtXb3Yb5jzuPQ7Tvc6mYg1zO1ZBjoEqZBI5sB5eFYQiTp6s0euVhMTQcl1yqXnaLT118BIBaaEtY1hLEpKq1ptG6y4dHR8BknAOTZCpRUvYlJlT6KbL42MXk2VaMZBvGRwIvs1644FSxy5vVRBSTIFsNZAzIyRpQjjhIA1, NSErrorFailingURLKey=https://graph.facebook.com/me/friends?sdk=ios&fields=id%2Cname%2Cusername%2Cfirst_name%2Clast_name&migration_bundle=fbsdk%3A20130120&format=json&access_token=CAAHyDtIdIi0BAM6ZCtXb3Yb5jzuPQ7Tvc6mYg1zO1ZBjoEqZBI5sB5eFYQiTp6s0euVhMTQcl1yqXnaLT118BIBaaEtY1hLEpKq1ptG6y4dHR8BknAOTZCpRUvYlJlT6KbL42MXk2VaMZBvGRwIvs1644FSxy5vVRBSTIFsNZAzIyRpQjjhIA1, NSLocalizedDescription=The request timed out., NSUnderlyingError=0x1d1e3800 "The request timed out."}, com.facebook.sdk:HTTPStatusCode=200, com.facebook.sdk:ErrorSessionKey=<FBSession: 0x1d1b0c90, state: FBSessionStateOpen, loginHandler: 0x1d1b0db0, appID: 547620445299245, urlSchemeSuffix: , tokenCachingStrategy:<FBSessionTokenCachingStrategy: 0x1d1afdd0>, expirationDate: 2013-09-28 09:49:39 +0000, refreshDate: 2013-07-30 14:08:31 +0000, attemptedRefreshDate: 0001-12-30 00:00:00 +0000, permissions:(
"read_friendlists"
)>}
Error:Error Domain=com.facebook.sdk code=5“操作无法完成。(com.facebook.sdk Error 5.)“UserInfo=0x1D1E3A330{com.facebook.sdk:errorInnerrorKey=Error Domain=NSURLErrorDomain code=-1001”请求超时。“UserInfo=0x1d1e16a0”{NSErrorFailingURLStringKey=https://graph.facebook.com/me/friends?sdk=ios&fields=id%2Cname%2Cusername%2Cfirst_name%2Clast_name&migration_bundle=fbsdk%3A20130120&format=json&access_token=CAAHyDtIdIi0BAM6ZCtXb3Yb5jzuPQ7Tvc6mYg1zO1ZBjoEqZBI5sB5eFYQiTp6s0euVhMTQcl1yqXnaLT118BIBaaEtY1hLEpKq1ptG6y4dHR8BknAOTZCpRUvYlJlT6KbL42MXk2VaMZBvGRwIvs1644FSxy5vVRBStifsnzaziyrpqjhia1,N错误故障键=https://graph.facebook.com/me/friends?sdk=ios&fields=id%2Cname%2Cusername%2Cfirst_name%2Clast_name&migration_bundle=fbsdk%3A20130120&format=json&access_token=CAAHyDtIdIi0BAM6ZCtXb3Yb5jzuPQ7Tvc6mYg1zO1ZBjoEqZBI5sB5eFYQiTp6s0euVhMTQcl1yqXnaLT118BIBaaEtY1hLEpKq1ptG6y4dHR8BknAOTZCpRUvYlJlT6KbL42MXk2VaMZBvGRwIVS1644FSXY5VVRBStifsnzaziyrpqjhia1,NSLocalizedDescription=请求超时,NSUnderlyingError=0x1d1e3800“请求超时”。},com.facebook.sdk:HTTPStatusCode=200,com.facebook.sdk:ErrorSessionKey=}
知道我做错了什么吗?请在StackOverflow中查看我的答案,以获取定制设计的facebook好友列表
看起来您只是没有向Facebook请求所需的许可。只需使用
[FBSession openActiveSessionWithReadPermissions:[NSArray arrayWithObjects:@"read_friendlists", @"user_status", @"friends_status", nil] allowLoginUI:allowLoginUI completionHandler:^(FBSession *session, FBSessionState status, NSError *error) {
[self sessionStateChanged:session state:status error:error];
}];
然后
FBRequest* friendsRequest = [FBRequest requestForMyFriends];
friendsRequest.session = FBSession.activeSession;
[friendsRequest startWithCompletionHandler: ^(FBRequestConnection *connection,
NSDictionary* result,
NSError *error) {
NSArray* friends = [result objectForKey:@"data"];
NSLog(@"Found: %i friends", friends.count);
NSLog(@"friends: %@", result);
for (NSDictionary<FBGraphUser>* friend in friends) {
NSLog(@"I have a friend named %@ with id %@", friend.name, friend.id);
}
}];
FBRequest*friendsRequest=[FBRequestFormyFriends];
friendsRequest.session=FBSession.activeSession;
[FriendsRequestStartWithCompletionHandler:^(FBRequestConnection*连接,
NSDictionary*结果,
N错误*错误){
NSArray*friends=[result objectForKey:@“data”];
NSLog(@“找到:%i个朋友”,朋友数);
NSLog(@“朋友:%@”,结果);
用于(NSDictionary*朋友中的朋友){
NSLog(@“我有一个名为%@且id为%@”、friend.name、friend.id的朋友);
}
}];
此版本中使用了哪个facebook SDK?ios SDK 3.1或其他?3.2.1也许我应该更新,好的idea3.6版本表现出相同的特性,如果不起作用,我将更改为您的实现:D.您的解决方案返回空字典:“打印结果说明:{data=();}”如果没有错误,它应该可以工作,但我得到了一个空列表:“朋友:{data=();}”检查你在Facebook上的应用程序设置,检查应用程序权限。如果我得到空结果意味着?它给出了{data=();}或者有时是summury={count=8;}
FBRequest* friendsRequest = [FBRequest requestForMyFriends];
friendsRequest.session = FBSession.activeSession;
[friendsRequest startWithCompletionHandler: ^(FBRequestConnection *connection,
NSDictionary* result,
NSError *error) {
NSArray* friends = [result objectForKey:@"data"];
NSLog(@"Found: %i friends", friends.count);
NSLog(@"friends: %@", result);
for (NSDictionary<FBGraphUser>* friend in friends) {
NSLog(@"I have a friend named %@ with id %@", friend.name, friend.id);
}
}];