AFnetworking的常见问题

废话不多说,直接上问题:
1.如何拼接请求头?

//申明返回的结果是json类型
  
  manager.responseSerializer = [AFJSONResponseSerializer serializer];
  
  //申明请求的数据是json类型
  
  manager.requestSerializer=[AFJSONRequestSerializer serializer];
  
  //  /如果报接受类型不一致请替换一致text/html或别的
  
  [manager.requestSerializer setValue:@"application/json" forHTTPHeaderField:@"Accept"];
  [manager.requestSerializer setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
  [manager.requestSerializer setValue:value forHTTPHeaderField:key];
  [manager.requestSerializer setValue: value forHTTPHeaderField:key];
  [manager.requestSerializer setValue: value forHTTPHeaderField:key];
  

2.如何返回参数在调用的同一方法中?

block,参数带有block去实现

__block NSString *longitude; // __block,静态变量
[self.manager POST:URL parameters:params success:^(NSURLSessionDataTask * _Nonnull task, id  _Nonnull responseObject) {
  
  NSDictionary *locDictionary = [NSJSONSerialization JSONObjectWithData:responseObject options:NSJSONReadingMutableLeaves error:nil];
  longitude = [locDictionary objectForKey:@"lon"]; // 纠正后经度
  
  if (finishBlock)
  {
    finishBlock(longitude, nil);
  }
  
} failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {
  NSLog(@"%@", error);
  if (finishBlock)
  {
    finishBlock(nil, error);
  }
}];
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • iOS网络架构讨论梳理整理中。。。 其实如果没有APIManager这一层是没法使用delegate的,毕竟多个单...
    yhtang阅读 5,316评论 1 23
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,155评论 19 139
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,271评论 4 61
  • 术语:公平法则 印象:公平原则,认为每个人应当依据其贡献比例的大小,获得相当的报酬。在“以经济生产力为主要目标的利...
    UncleColor阅读 2,092评论 0 1
  • 2017-09-18 牛哥 上半生下半生
    高牵牛阅读 1,372评论 0 3