MKNetworkKit GET和POST的使用
来源:互联网 发布:廊坊慧聪网络 编辑:程序博客网 时间:2024/05/06 07:50
简单说一下GET和POST的不同之处:
GET请求,它是将参数直接写在访问路径中,参数用&连接。操作简单,但是安全性不高。
POST请求,它是将参数放在body中。由于路径和参数是分开的,所以安全性较高。
举例说明:
GET请求的路径为:
https://api.weibo.com/user_timeline.json?access_token=xxx&uid=xxx
其中基本的URL是https://api.weibo.com/user_timeline.json
参数2个:access_token和uid
POST请求的路径为:
https://api.weibo.com/user_timeline.json
参数以字典的方式存放在HTTPbody中。
以下分别展示了MKNetworkKit下GET和POST请求的代码:
GET请求的代码如下:
NSString *cityName = @"北京"; // 路径中中文需要转成专门用于URL的编码格式 cityName = [cityName stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]; NSString *host = @"192.168.0.30:82"; NSString *path = [NSString stringWithFormat:@"getWeater?cityName=%@",cityName]; //header中可以放附加信息,如时间、设备等等 NSMutableDictionary *header = [[NSMutableDictionary alloc] init]; [header setValue:@"text/xml; charset=utf-8" forKey:@"Content-Type"]; MKNetworkEngine *engine = [[MKNetworkEngine alloc] initWithHostName:host customHeaderFields:header]; MKNetworkOperation *operation = [engine operationWithPath:path]; [operation addCompletionHandler:^(MKNetworkOperation *completedOperation) { NSLog(@"请求完成"); // 获得返回的数据(字符串形式) NSString *result = [completedOperation responseString];//responseData 二进制形式 NSLog(@"返回数据:%@", result); } errorHandler:^(MKNetworkOperation *completedOperation, NSError *error) { NSLog(@"请求出错"); }]; // 发起网络请求 [engine enqueueOperation:operation];
POST请求的代码如下;
NSString *cityName = @"北京"; cityName = [cityName stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]; //目标URL:http://192.168.0.30:82/getWeather NSString *host = @"192.168.0.30:82"; // 域名(host)后面跟着的路径, NSString *path = [NSString stringWithFormat:@"getWeater"]; //参数 NSMutableDictionary *params = [[NSMutableDictionary alloc] init]; [params setValue:cityName forKey:@"cityName"]; // path 值可以放到 engine 的初始化中,也可以放到 operation 的初始化中,效果一样 MKNetworkEngine *engine = [[MKNetworkEngine alloc] initWithHostName:host apiPath:path customHeaderFields:nil]; MKNetworkOperation *operation = [engine operationWithPath:nil params:params httpMethod:@"POST"]; // 添加网络请求完成处理逻辑 [operation addCompletionHandler:^(MKNetworkOperation *completedOperation) { NSLog(@"请求完成"); // 获得返回的数据(字符串形式) NSString *result = [completedOperation responseString];//responseData 二进制形式 NSLog(@"返回数据:%@", result); } errorHandler:^(MKNetworkOperation *completedOperation, NSError *error) { NSLog(@"请求出错"); }]; // 发送网络请求 [engine enqueueOperation:operation];
0 0
- MKNetworkKit GET和POST的使用
- MKNetworkKit 简单GET和POST使用
- GET和POST的使用
- MKNetworkKit:AFNetworking(数据请求get:post)
- Ajax GET 和 POST 的使用
- asp.net Get和Post的使用
- get和post使用的区别
- Post和Get在HttpClient的使用
- get和post方法的使用
- OkHttp GET 和 POST 的使用
- OkHttp GET 和 POST 的使用
- OkHttp GET 和 POST 的使用
- OkHttp GET 和 POST 的使用
- get和post的使用场景
- GET和POST的区别,何时使用POST?
- GET和POST的区别,何时使用POST?
- Post和Get的
- ios MKNetworkKit 的使用
- 深入理解Java虚拟机读书笔记五
- Ubuntu 12.04中文输入法的安装
- PAT 1021. 个位数统计
- vs2005,2008 工程添加引用lib静态库 以及 移植c/c++工程
- vs2012 下 配置 opencv2.4.9
- MKNetworkKit GET和POST的使用
- timer使用
- Debug查看汉字机内码
- 【LeetCode】Balanced Binary Tree,平衡二叉树
- Eclipse打包成可运行的jar文件
- POJ 2677 Tour 双调旅行商 dp, double+费用流
- android调用系统发送短信 和 已发送短信界面
- 每个程序员都必读的10篇文章 - Java译站
- JS控制form表单的走向