iOS开发网络篇—发送json数据给服务器以及多值参数
iOS开发网络篇—发送json数据给服务器以及多值参数
一、发送JSON数据给服务器
发送JSON数据给服务器的步骤:
(1)一定要使用POST请求
(2)设置请求头
(3)设置JSON数据为请求体
代码示例:
1 #import "YYViewController.h" 2 3 @interface YYViewController () 4 5 @end 6 7 @implementation YYViewController 8 9 - (void)viewDidLoad 10 { 11 [super viewDidLoad]; 12 } 13 14 - (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event 15 { 16 // 1.创建请求 17 NSURL *url = [NSURL URLWithString:@"http://192.168.1.200:8080/MJServer/order"]; 18 NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url]; 19 request.HTTPMethod = @"POST"; 20 21 // 2.设置请求头 22 [request setValue:@"application/json" forHTTPHeaderField:@"Content-Type"]; 23 24 // 3.设置请求体 25 NSDictionary *json = @{ 26 @"order_id" : @"123", 27 @"user_id" : @"789", 28 @"shop" : @"Toll" 29 }; 30 31 // NSData --> NSDictionary 32 // NSDictionary --> NSData 33 NSData *data = [NSJSONSerialization dataWithJSONObject:json options:NSJSONWritingPrettyPrinted error:nil]; 34 request.HTTPBody = data; 35 36 // 4.发送请求 37 [NSURLConnection sendAsynchronousRequest:request queue:[NSOperationQueue mainQueue] completionHandler:^(NSURLResponse *response, NSData *data, NSError *connectionError) { 38 NSLog(@"%d", data.length); 39 }]; 40 } 41 42 @end
二、多值参数
多值参数:一个参数对应多个值。
如下面的请求参数:
http://192.168.1.103:8080/MJServer/weather?place=北京&place=河南&place=湖南
服务器的place属性是一个数组。因此用同一个参数不会把服务器的值覆盖。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)