次のように NSHTTPCookie を設定しています (または設定しようとしています)。
+ (void)setCookie {
NSString* cookieName = @"MyCookieName";
NSString* cookieValue = @"MyCookieValue";
NSString* cookieOriginURL = @"www.mycompany.com";
NSString* cookiePath = @"/";
NSMutableDictionary *cookieProperties = [NSMutableDictionary dictionary];
[cookieProperties setObject:cookieName forKey:NSHTTPCookieName];
[cookieProperties setObject:cookieValue forKey:NSHTTPCookieValue];
[cookieProperties setObject:cookieOriginURL forKey:NSHTTPCookieOriginURL];
[cookieProperties setObject:cookiePath forKey:NSHTTPCookiePath];
[cookieProperties setObject:[[NSDate date] dateByAddingTimeInterval:3600] forKey:NSHTTPCookieExpires];
NSHTTPCookie *cookie = [NSHTTPCookie cookieWithProperties:cookieProperties];
[[NSHTTPCookieStorage sharedHTTPCookieStorage] setCookie:cookie];
}
このメソッドが呼び出された後、NSURLRequest を作成します。
NSString *urlAddress = @"http//:www.mycompany.com/mobile/home";
//Create a URL object.
NSURL *url = [NSURL URLWithString:urlAddress];
//URL Request Object
NSURLRequest *requestObj = [NSURLRequest requestWithURL:url];
NSLog(@"Here's the request: %@", [requestObj description]);
//Load the request in the UIWebView.
[self.webView loadRequest:requestObj];
しかし、出力は次のとおりです。
Here's the request: <NSURLRequest: 0xa33a4d0> { URL: http:www.mycompany.com/mobile/home
リクエストに Cookie 情報が追加されることを期待していましたが、そうではありません。
私は Cookie についてよく知らないので、コードに何かが欠けているのか、それとも出力の意味を解釈し損ねているだけなのかわかりません。
助けてくれてありがとう。