删除目标c中的身份验证凭据



我正在使用url"http://user:password@example.com/stuff.xml"进行HTTP请求,并且我注意到用户凭据正在缓存和使用。如果我尝试使用无效的凭据首先登录,则无法工作。但是,如果我使用有效的用户名/密码登录,然后尝试使用无效的用户名/密码再次登录,它使用我刚刚使用的有效凭据,而不是url中的内容。

我一直在看NSURLCredentialStorage可能删除任何保存,但我需要指定一个NSURLProtectionSpace,我不确定那是什么。

:

我做了一个didReceiveAuthenticationChallenge委托方法,在NSURLCredential中设置用户名和密码,持久性设置为NSURLCredentialPersistenceNone,但似乎委托方法甚至没有被调用第二次。

更新2 :

似乎无论我做什么,身份验证都被保存在某个地方。它所验证的域似乎没有保存在sharedCredentialStorage中。

当我设置canAuthenticateAgainstProtectionSpace为假,它不使用didReceiveAuthenticationChallenge,但认证凭证(这是url的一部分,而不是挑战响应)似乎仍然得到缓存!

这个看似直截了当的问题并不是直截了当的,而且非常令人沮丧。这一切都可能是一个bug吗?

凭据通常存储为cookie;尝试删除所有存储的cookie

相关内容

  • 没有找到相关文章

最新更新