项目需求是后台在返回数据给前端时,在http 的header中附上了 TIME,这是需要从success的数据中拿 header 中的数据,从 stackoverflow浏览知道了怎么获取header,下面来看看怎么拿的。
[instance POST:urlStr parameters:params progress:nil success:^(NSURLSessionDataTask * _Nonnull task, id _Nullable responseObject) {
// 获取 header 中的time的方法:
NSString *time;
if ([task.response isKindOfClass:[NSHTTPURLResponse class]]) {
NSHTTPURLResponse *r = (NSHTTPURLResponse *)task.response;
time = [r allHeaderFields][@"TIME"];
}
// 隐藏加载框
[MBProgressHUD hideHUD];
} failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {
[MBProgressHUD hideHUD];
}];
通过:
if ([task.response isKindOfClass:[NSHTTPURLResponse class]]) {
NSHTTPURLResponse *r = (NSHTTPURLResponse *)task.response;
NSLog(@"%@",[r allHeaderFields]);
}
可以拿到header。