Czy masz oddzielne miejsce na pliki cookie dla dwóch UIWebView?
tło
Opracowuję prostą aplikację na iPada, która pozwala użytkownikowi przeglądać tę samą stronę z różnymi loginami w tym samym czasie. Dlatego mam dwaUIWebView
i powinny mieć różne miejsca na pliki cookie, aby użytkownik mógł zalogować się na jedno konto na pierwszymUIWebView
i drugie konto na drugimUIWebView
.
Co próbowałem?
Myślę, że rozwiązaniem jest wdrożenie różnych magazynów plików cookie w obuUIWebView
Mam.
Sasmito Adibowo napisał artykułWdrożenie własnego magazynu plików cookie które zawierają szczegółowe informacje na temat korzystania z niestandardowego magazynu plików cookieWebView
na komputerze Mac.
Dokonuje się tego przez zmodyfikowanie żądania NSURLWebView
zamierza wysłać, dodając do niego nagłówki plików cookie, a także przechwycić odpowiedź zWebView
i wyodrębnij pliki cookie z nagłówka odpowiedzi i zapisz je w naszym własnym magazynie plików cookie.
Z technicznego punktu widzenia odbywa się to za pomocą tych dwóch metod delegowania:
- (void)webView:(WebView *)sender resource:(id)identifier didReceiveResponse:(NSURLResponse *)response fromDataSource:(WebDataSource *)dataSource
- (NSURLRequest *)webView:(WebView *)sender resource:(id)identifier willSendRequest:(NSURLRequest *)request redirectResponse:(NSURLResponse *)redirectResponse fromDataSource:(WebDataSource *)dataSource
Chociaż jest to nieudokumentowane,UIWebView
obsługiwał jedną z powyższych metod z nieco inną nazwą metody:
- (NSURLRequest *)uiWebView:(UIWebView *)sender resource:(id)identifier willSendRequest:(NSURLRequest *)request redirectResponse:(NSURLResponse *)redirectResponse fromDataSource:(id)dataSource
Jednak,UIWebView
nie mam równoważnej metody delegowaniawebView:resource:didReceiveResponse:fromDataSource:
i dlatego nie mogę wyodrębnić plików cookie z nagłówków odpowiedzi.
Pytanie
Czy istnieje sposóbUIWebView
użyć niestandardowego magazynu plików cookie, więc dwaUIWebView
może mieć własne miejsce na pliki cookie?
Dzięki!