我正在寻找一种方法来保存访问令牌,以允许用户在 facebook 上发帖,而无需每次调用图形 API 时都登录:
我需要一个离线访问令牌,我将其存储在 NSUserDefaults 中,但是当我尝试再次使用它时,我收到 FacebookErrDomain 错误 10000
这就是我所做的:
在 fbDidLogin 中,我获取 access_token 并将其保存在用户默认值中
- (void)fbDidLogin {
NSString *token = self.facebook.accessToken;
[[NSUserDefaults standardUserDefaults] setObject:token forKey:@"facebookToken"];
}
之后,当我再次运行应用程序时,我只是从用户默认值中获取令牌,并将它们分配给 facebook 对象:
NSString *token = [[NSUserDefaults standardUserDefaults] objectForKey:@"facebookToken"];
[_facebook setAccessToken:token];
但它不起作用..
有人知道我可能做错了什么吗?
谢谢,
文森特.
编辑 :
如果我之后做一个 NSlog[[NSUserDefaults standardUserDefaults] objectForKey:@"facebookToken"];
我可以看到令牌已保存。
我遇到了同样的问题,我发现问题是您没有存储到期日期。
如果您这样做,您将可以重新登录。
示例代码:
[[NSUserDefaults standardUserDefaults] setObject:_facebook.accessToken forKey:@"fb_access_token"];
[[NSUserDefaults standardUserDefaults] setObject:_facebook.expirationDate forKey:@"fb_exp_date"];
检索也是一样的,只是设置一下_facebook.expirationDate
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)