我将以下代码用于使用基本http身份验证登录的界面。
RKRequest *loginRequest = [[RKRequest alloc] initWithURL:URL];
loginRequest.timeoutInterval = REST_LOGIN_TIMEOUT;
loginRequest.username = username;
loginRequest.password = password;
loginRequest.authenticationType = RKRequestAuthenticationTypeHTTPBasic;
loginRequest.method = RKRequestMethodPOST;
loginRequest.onDidLoadResponse = ^(RKResponse *response) {
// blabla
}
....sending request...
我第一次登录时,它才有效。但是如果我再次执行相同的请求,我会得到一个HTTP状态代码405.当我重新启动我的应用程序时,下一个请求再次起作用。所以我认为它会自动保存一些数据,如会话令牌或内部的东西。我该如何重置?任何提示?
答案 0 :(得分:4)
它确实会自动存储任何Cookie(包括会话Cookie)。要清除此问题,请使用以下命令:
NSHTTPCookieStorage *cookieStorage = [NSHTTPCookieStorage sharedHTTPCookieStorage];
for (NSHTTPCookie *cookie in cookieStorage.cookies)
{
[cookieStorage deleteCookie:cookie];
}
您当然可以首先检查Cookie,看看是否要删除它们。