首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么在设置NSHTTPCookie之后,它没有附加到NSURLRequest中呢?

为什么在设置NSHTTPCookie之后,它没有附加到NSURLRequest中呢?
EN

Stack Overflow用户
提问于 2013-11-27 19:31:19
回答 1查看 2.5K关注 0票数 4

我正在设置(或试图设置) NSHTTPCookie,如下所示:

代码语言:javascript
复制
+ (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:

代码语言:javascript
复制
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];

但产出如下:

代码语言:javascript
复制
Here's the request: <NSURLRequest: 0xa33a4d0> { URL: http:www.mycompany.com/mobile/home

我希望看到附加在请求中的cookie信息,但事实并非如此。

我对cookie不太了解,所以我不知道我的代码是不是遗漏了什么,或者我只是错过了解释输出的含义。

谢谢你的帮助。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-12-04 09:36:16

我怀疑NSURLRequest的描述是否会提供cookie信息。

域是匹配的(cookie和URL),因此必须将cookie附加到请求中。在触发请求之前执行以下代码,以查看与请求一起发送了哪些cookie。

代码语言:javascript
复制
NSHTTPCookieStorage *cookieJar = [NSHTTPCookieStorage sharedHTTPCookieStorage];
for(NSHTTPCookie *cookie in [cookieJar cookiesForURL:url]) {
        NSLog(@"Cookies attached: %@", cookie.description);
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20251430

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档