Multiple NSHTTPCookieStorage in the same app

爷,独闯天下 提交于 2019-12-12 09:57:45

问题


I am writing a multi-user app using NSURLSession and I can't figure out how to have a separate cookie storage when working with multiple NSURLSession instances.

I tried setting NSURLSessionConfiguration's HTTPCookieStorage property with a NSHTTPCookieStorage that I alloc/init'ed myself but it doesn't work (cookies aren't stored, even if I call setCookie: myself)

I also tried using [NSURLSessionConfiguration ephemeralSessionConfiguration] but then again, my cookies aren't stored between requests. The Set-Cookie header is present in the server's responses, and using [NSHTTPCookieStorage sharedHTTPCookieStorage] works so the issue is in the code.

Is it at all possible to have separate cookie stores for different NSURLSession instances? I believed it was one of the main point of the new networking API.


回答1:


I am trying to achieve the same thing.

The ephemeralSessionConfiguration doesn't store your cookies, because its cookieAcceptPolicy is always set to NEVER, even if you try to change it to something else. Same goes for the manually allocated NSURLSessionConfiguration.

From my point of view this is in contrast to the documentation which states that ephemeral sessions use an in-memory cookie store.

I have posted a separate question regarding this issue: How to set cookieAcceptPolicy for ephemeral NSURLSession



来源:https://stackoverflow.com/questions/27132606/multiple-nshttpcookiestorage-in-the-same-app

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!