gpt4 book ai didi

ios - OAuthException/代码 = 2500/消息 = "An active access token must be used to query information about the current user."

转载 作者:可可西里 更新时间:2023-11-01 04:44:09 30 4
gpt4 key购买 nike

我正在尝试获取登录用户的数据(如姓名、性别、生日、个人资料图片等)。我尝试了以下两个代码,如下所示:

 //first: Create request for user's Facebook data
FBRequest *request = [FBRequest requestForMe];

// Send request to Facebook
[request startWithCompletionHandler:^(FBRequestConnection *connection, id result, NSError *error) {
NSLog(@"%@", error);
if (!error) {
// result is a dictionary with the user's Facebook data
NSDictionary *userData = (NSDictionary *)result;
NSLog(@"%@....",userData);
_facebookID = userData[@"id"];
_name = userData[@"name"];
_location = userData[@"location"][@"name"];
_gender = userData[@"gender"];
_birthday = userData[@"birthday"];
NSLog(@"%@",_name);


_picutreURL = [NSURL URLWithString:[NSString stringWithFormat:@"https://graph.facebook.com/%@/picture?type=large&return_ssl_resources=1", _facebookID]];

self.nameField.text=_name;
self.profilePicture.image=[UIImage imageWithData:[NSData dataWithContentsOfURL:_picutreURL]];
self.profileInfo.text=[NSString stringWithFormat:@"%@, Live in %@ , Born on %@",_gender,_location,_birthday];



}
}];
// 2nd:Fetch user data
[FBRequestConnection
startForMeWithCompletionHandler:^(FBRequestConnection *connection,
id<FBGraphUser> user,
NSError *error) {
if (!error) {
NSString *userInfo = @"";

// Example: typed access (name)
// - no special permissions required
userInfo = [userInfo
stringByAppendingString:
[NSString stringWithFormat:@"Name: %@\n\n",
user.name]];

// Example: typed access, (birthday)
// - requires user_birthday permission
userInfo = [userInfo
stringByAppendingString:
[NSString stringWithFormat:@"Birthday: %@\n\n",
user.birthday]];

// Example: partially typed access, to location field,
// name key (location)
// - requires user_location permission
userInfo = [userInfo
stringByAppendingString:
[NSString stringWithFormat:@"Location: %@\n\n",
user.location[@"name"]]];

// Example: access via key (locale)
// - no special permissions required
userInfo = [userInfo
stringByAppendingString:
[NSString stringWithFormat:@"Locale: %@\n\n",
user[@"locale"]]];

// Example: access via key for array (languages)
// - requires user_likes permission
if (user[@"languages"]) {
NSArray *languages = user[@"languages"];
NSMutableArray *languageNames = [[NSMutableArray alloc] init];
for (int i = 0; i < [languages count]; i++) {
languageNames[i] = languages[i][@"name"];
}
userInfo = [userInfo
stringByAppendingString:
[NSString stringWithFormat:@"Languages: %@\n\n",
languageNames]];
}

// Display the user info
NSLog(@"%@",userInfo);
}
}];

但是我在输出中得到空字符串并检测到这个错误:

Error Domain=com.facebook.sdk Code=5 "The operation couldn’t be completed. (com.facebook.sdk error 5.)" UserInfo=0x9499320 {com.facebook.sdk:ParsedJSONResponseKey={
body = {
error = {
code = 2500;
message = "An active access token must be used to query information about the current user.";
type = OAuthException;
};
};
code = 400;
}, com.facebook.sdk:HTTPStatusCode=400}

我该怎么办?

最佳答案

我相信我遇到了同样的问题,我刚刚让它工作的方式是添加

FBSession.activeSession = fbSession;

一旦初始处理程序成功返回。 (fbSession 是其中包含 facebook session 的任何变量。)我只是偶然发现了这一点(我认为来自另一篇 StackOverflow 帖子)。但我没有在文档中看到它,并且通过 grepping,它似乎不在任何示例应用程序中。所以也许我的代码存在我没有看到的更大问题?我很想知道其他人如何避免设置 activeSession,并且仍然能够运行 startForMeWithCompletionHandler

关于ios - OAuthException/代码 = 2500/消息 = "An active access token must be used to query information about the current user.",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19635813/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com