IOS cookie的使用方法1 Request
AFHTTPSessionManager * manager = [AFHTTPSessionManager manager];
NSString *cookies = [[NSUserDefaults standardUserDefaults]objectForKey:@"set-cookie"];
[manager.requestSerializer setValue:cookies forHTTPHeaderField:@"cookie"];
[manager POST:@"www.baidu.com" parameters:nil progress:nil success:^(NSURLSessionDataTask * _Nonnull task, id _Nullable responseObject) {
} failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {
}];
建议结合上篇cookie使用图解一起看
这里是第一次访问。注意,第一次访问cookie是空的,只有访问成功一次,拿到一次cookie存到本地,第二次访问的时候,才能给httpheaderField里面的cookie赋值。
接下来访问请求之后,拿到cookie,存到本地数据持久化。
[manager POST:@"www.baidu.com" parameters:nil progress:nil success:^(NSURLSessionDataTask * _Nonnull task, id _Nullable responseObject) {
NSHTTPURLResponse *response = (NSHTTPURLResponse *)task.response;
NSDictionary *allHeaders = response.allHeaderFields;
[[NSUserDefaults standardUserDefaults]setValue:allHeaders[@"setcookie"] forKey:@"set-cookie"];
} failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {
}];
存到本地以后,下次请求,也就是第一段代码段,请求的时候就可以把mangager带上cookie了。