gpt4 book ai didi

ios - 错误 :An active access token must be used to query information about the current user

转载 作者:行者123 更新时间:2023-12-01 17:49:51 28 4
gpt4 key购买 nike

 {com.facebook.sdk:FBSDKGraphRequestErrorGraphErrorCode=2500, com.facebook.sdk:FBSDKGraphRequestErrorParsedJSONResponseKey={
body = {
error = {
code = 2500;
"fbtrace_id" = DiBO16GER0C;
message = "An active access token must be used to query information about the current user.";
type = OAuthException;
};
};
code = 400;
}, com.facebook.sdk:FBSDKGraphRequestErrorHTTPStatusCodeKey=400, com.facebook.sdk:FBSDKErrorDeveloperMessageKey=An active access token must be used to query information about the current user., com.facebook.sdk:FBSDKGraphRequestErrorCategoryKey=0}

我正面临上述错误。我知道这已经讨论过了,但他们使用 FBSession 进行了修复.在最新的 SDK 中,我没有看到 FBSession。请帮助我,我整天都在坚持这一点。

问题出现:
我有 3 个页面(登录页面、用户名页面、查找 friend 页面)。在登录页面中,我只是通过 facebook 进行身份验证并从 graphAPI 获取用户信息,它工作正常。然后从用户来到页面用户名这里正常注册过程。然后我来到查找 friend 页面,我面临的问题是,如果我有流程(登录 -> 用户名 -> 查找 friend 页面),我可以使用 graphAPI 列出 facebook friend 但是 当我杀死应用程序并直接打开此页面时,我无法获取 friend 列表,它显示上述错误。我不知道如何从这件事中恢复过来。请帮助以前有过这种感觉的人。

我的代码如下,
找 friend 页面:
 if ([FBSDKAccessToken currentAccessToken]) 
{
[[[FBSDKGraphRequest alloc] initWithGraphPath:url parameters:@{ @"fields": @"id,picture"}]
startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error)
{
NSLog(@"result === %@",result);
if (!error)
{}
else
{}
}];
}
else
{
NSLog(@"There is no current access token");
}

笔记:
当我终止应用程序并再次返回用户名页面时,当前访问 token 为空。

最佳答案

知道了!

这肯定会对某人有所帮助,实际上我在这个地方犯了错误,[[[FBSDKGraphRequest alloc] initWithGraphPath:url parameters:@{ @"fields": @"id,picture"}]此方法永远没有访问 token 。但奇怪的是整个应用程序中都没有启用访问 token 。当我杀死应用程序后转到下一页时,它将为空。所以我只是将 token 字符串保存在 NSUserDefaults 中,例如

NSString *access_token=[FBSDKAccessToken currentAccessToken].tokenString;
[NSUSER setObject:access_token forKey:@"fb_token"];
[NSUSER synchronize];

然后无论我在哪里调用graphAPI,我都会使用这个带有tokenstring的方法,比如,
[[[FBSDKGraphRequest alloc] initWithGraphPath:url parameters:@{ @"fields": @"id,picture"} tokenString:[NSUSER objectForKey:@"fb_token"] version:nil HTTPMethod:@"GET"]
startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error)
{
}];

很简单,但是找起来时间太长了。高兴的!

关于ios - 错误 :An active access token must be used to query information about the current user,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34507584/

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