Я создаю приложение iOS, использующее Google App Engine для бэкэнд. Google предоставляет сайт входа в систему HTML, в котором хранится файл cookie для проверки подлинности. Если я заеду на этот сайт в UIWebView, и пользователь войдет в систему, будут ли эти файлы cookie находиться в хранилище, где они будут собраны NSURLConnection при обращении к тому же сайту?
Разделяют ли хранилища файлов cookie UIWebView и NSURLConnection?
Ответ 1
Файл cookie UIWebView будет храниться в изолированном хранилище cookie, доступном через NSHTTPCookieStorage sharedHTTPCookieStorage]
. Вы можете использовать это хранилище файлов cookie в NSURLConnection следующим образом:
NSArray *cookies = [[NSHTTPCookieStorage sharedHTTPCookieStorage] cookiesForURL:[NSURL URLWithString:@"__YOUR_URL__"]];
NSDictionary *headers = [NSHTTPCookie requestHeaderFieldsWithCookies:cookies];
[request setAllHTTPHeaderFields:headers]; //A previously created NSMutableURLRequest
Теперь вы можете обычно использовать NSURLRequest в NSURLConnection, и он отправит файлы cookie, созданные после входа в UIWebView