X-Auth-Token在1个会话后无效

时间:2015-04-29 09:10:28

标签: ios xcode api networking afnetworking

我正在Xcode中开发iOS应用程序并使用AFNetworking与API通信 - 该API使用“X-Auth-Token”。因此,当我登录并将会话令牌存储在用户默认值中时,它会完美地运行,直到应用程序重新启动 - 会话令牌由于某种原因不起作用?

令牌在AFNetworking中使用如下:

NSMutableDictionary *params = [[NSMutableDictionary alloc] init];
[params setValue:@"SessionTokenFromUserDefaults" forKey:@"X-Auth-Token"];

有没有人有任何建议? (PS:重启后使用令牌时从AFN获得的错误是:请求失败:未授权(401)

如果不登录每个会话,我怎么能实现这一目标?

非常感谢!

2 个答案:

答案 0 :(得分:0)

我记得在没有缓存策略的情况下使用NSURLConnections存在这类问题。 我认为有一个thread here可能会有所帮助。

答案 1 :(得分:0)

服务器很可能报告请求失败:未授权(401)是因为令牌为空。

要进行调试,您可以在AppDelegate的

中添加这两行
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    [[AFNetworkActivityLogger sharedLogger] startLogging];
    [[AFNetworkActivityLogger sharedLogger] setLevel:AFLoggerLevelDebug];
}

然后,您可以检查日志中的请求,看看是否已在标题中设置了令牌。