ページ

2009年8月15日土曜日

WPSU(13) - WebKitでクッキーを自前でハンドリングする #2 レスポンスを見る

このエントリーをブックマークに追加 このエントリーを含むはてなブックマーク

こんどはレスポンスを見てみる。

-[WebResourceLoadDelegate webView:resource:didReceiveResponse:fromDataSource:]を実装し、レスポンスヘッダを書き出してみる。

WeController.m

- (void)webView:(WebView *)sender
resource:(id)identifier
didReceiveResponse:(NSURLResponse *)response
fromDataSource:(WebDataSource *)dataSource
{
NSLog(@"%@", [(NSHTTPURLResponse*)response allHeaderFields]);
}



Googleへアクセスしログアウトしたところ下記のヘッダが得られた。
2009-08-15 12:36:15.842 WebPageScreenshotUtility[10622:10b] {
"Cache-Control" = "private, max-age=0";
"Content-Encoding" = gzip;
"Content-Length" = 282;
"Content-Type" = "text/html; charset=UTF-8";
Date = "Fri, 15 Aug 2009 03:36:15 GMT";
Expires = "Fri, 15 Aug 2009 03:36:15 GMT";
Server = "GFE/2.0";
"Set-Cookie" = "GoogleAccountsLocale_session=ja, SID=EXPIRED;Domain=.google.co.jp;Path=/;Expires=Mon, 01-Jan-1990 00:00:00 GMT, HSID=EXPIRED;Domain=.google.co.jp;Path=/;Expires=Mon, 01-Jan-1990 00:00:00 GMT, SSID=EXPIRED;Domain=.google.co.jp;Path=/;Expires=Mon, 01-Jan-1990 00:00:00 GMT";
"X-Content-Type-Options" = nosniff;
}


"Set-Cookie" が得られた。

- - - - - -

WebView を使った場合、2つのデリゲートでそれぞれクッキーの送出と保存を行えば良さそうだ。