我正在使用ASIHTTPRequest来与服务器通信iOS应用程序。到目前为止,我一直在许多其他项目中使用该库,我没有遇到任何问题。
但是现在,我编写的应用程序有3种不同的登录/注册方法:
如果单独使用它们,那么这些方法中的每一种都很有效。例如,我可以使用用户名和密码进行正常登录,我从用户那里获取此信息,然后使用HTTPRequest库将其发送到服务器,服务器为我提供了一个有效的access_token,可以毫无问题地登录。与Facebook或runKeeper相同。
但是,如果我执行以下步骤,任何工作都可以:
用户X退出并清除NSUserDefaults中的所有信息并进行同步。
用户Y使用他的用户名和密码登录(登录方法编号为1)。
用户Y注销并清除NSUserDefaults中的所有存储数据并进行同步。
最后,任何其他用户(例如Z)都会使用Facebook / runKeeper再次登录。
我知道阅读这些步骤你可以认为这是服务器的问题,但我使用cURL进行了一些测试,并且令牌的响应总是正确的。然后我认为它可能是iOS应用程序中的一些问题,但我看不到任何断点和我做过的NSLog。
我读到ASIHttpRequest库中的缓存,我在服务器的所有请求中添加了两行代码,用于禁用所有缓存系统,但它不起作用:
[request setCachePolicy: ASIDoNotWriteToCacheCachePolicy | ASIDoNotReadFromCacheCachePolicy];
[request addRequestHeader:@"Cache-Control" value:@"no-cache"];
我不知道你们中是否有人遇到过同样的问题,或者你们对我能尝试什么有所了解,但我们将非常感激。
如果您需要更多信息,请告诉我,我会看到我能做什么
谢谢!