Object-C中的网络请求如何取出和设置cookie

来源:互联网 发布:淘宝有聊天壁纸设置吗 编辑:程序博客网 时间:2024/05/01 23:21

对于某些奇葩的接口,可能会带有cookie值,带着cookie值去请求某个接口其实就是带着登录状态去请求某个接口,

在Object-C中该如何取出和设置cookie值呢?cookie值位于请求头或者响应头里面,其实苹果网络框架中对cookie做了处理了,比如你从某个请求中获得了cookie,那么在接下来的请求中都会带上这个cookie,所以大部分请求下你不需要去关心,但是在某些请求下,可能还是需要自己手动去设置:设置的过程如下:

//从url中取出cookie        NSArray *cookies = [[NSHTTPCookieStorage sharedHTTPCookieStorage] cookiesForURL: [NSURL URLWithString:url]];                NSData *data = [NSKeyedArchiver archivedDataWithRootObject:cookies];
//保存在本地        [[NSUserDefaults standardUserDefaults] setObject:data forKey:@"loginCookie"];        //从本地中取出然后设置cookie        NSData *cookiesdata = [[NSUserDefaults standardUserDefaults] objectForKey:@"loginCookie"];        if([cookiesdata length]) {            NSArray *cookies = [NSKeyedUnarchiver unarchiveObjectWithData:cookiesdata];            NSHTTPCookie *cookie;            for (cookie in cookies) {                [[NSHTTPCookieStorage sharedHTTPCookieStorage] setCookie:cookie];            }          }


0 0
原创粉丝点击