iOS相同Key字典进行网络请求,简单的AFNetWorking及原生请求。

1.重复Key数据进行请求,如@{@""name":@"1",@"name",@"2",@"name":@"3"};如果直接用字典作为网络请求参数,根据字典的特性,相同Key合并,只会显示最后一个key及value。为解决这个问题,最简单的一个方法就是使用Get请求,毕竟字符串没相同key的校验。

iOS在7.0以后新增了一个NSURLComponents,它可以管理URL,可以设置scheme,可以设置校验账号、密码,可以设置端口,总之是很强大。NSURLComponents有一个强大的属性queryItems(ios8.0以后可用),可以设置相同的key。 

例:NSURLQueryItem *item = [NSURLQueryItem queryItemWithName:@"account" value:@"1"];

NSURLQueryItem *item1 = [NSURLQueryItem queryItemWithName:@"account" value:@"2"];

NSURLQueryItem *item2 = [NSURLQueryItem queryItemWithName:@"password" value:@"3"];

初始化URL:NSURLComponents *components = [[NSURLComponents alloc] initWithString:@"http://192.168.7.88:8080/testPostArrRequest"];

将NSURLQueryItem对象添加到NSURLComponents:components.queryItems=@[item,item1,item2];

获取URL:components.URL。

根据上面的属性,我们可以写一个简单的网络请求:

附一个简单的AFNetWorking请求吧,毕竟大部分人都是用的AFNetWorking。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。