MKNetworkKit 使用
关于ios 网络请求之MKNetworkKit库的使用
项目导入MK库之后,还需要导入三个框架文件:
SystemConfiguration.framework
CFNetwork.framework
Security.framework
新的MK支持ARC机制,所以如果项目没有使用ARC的话需要告诉编译器这个库是支持ARC的:
@interface HttpService : MKNetworkEngine
创建一个类,继承MKNetworkEngine
获取单例对象:
+(HttpService*) shareEngine;
+(HttpService*)shageEngine
{
@synchronized(self)
{
if(engine == nil)
{
engine = [[self alloc] initWithHostName:HOST_URL];
//HOST——URL是被发送请求的主机地址
}
}
return engine;
}
请求方法:
typedef void(^ResponseBlock) (Info *info);
-(MKNetworkOperation*)getLogin:(ResponseBlock) info//请求成功Block
onError:(MKNKResponseErrorBlock) error//请求失败Block
andAction:(NSString*)aAction//请求参数
andCardNum:(NSString*)aCardNum//请求参数
andCardCode:(NSString*) aCardCode; //请求参数
实现
-(MKNetworkOperation*)getLogin:(ResponseBlock)infoonError:(MKNKResponseErrorBlock)error
andAction:(NSString*)aAction
andCardNum:(NSString*)aCardNum
andCardCode:(NSString*)aCardCode
{
//网络接口
NSString *url = [NSStringstringWithFormat:@"DeliveryService.aspx"];
//创建一个存放参数的可变字典
NSMutableDictionary *dic =[NSMutableDictionary dictionaryWithCapacity:0];
//将请求的参数存入字典
[dic setObject:aAction forKey:@"action"];
[dic setObject:aCardNumforKey:@"CardNum"];
[dic setObject:aCardCodeforKey:@"CardCode"];
//创建一个MKNetworkOperation 对象
MKNetworkOperation *op = [selfoperationWithPath:[url stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]params:dic httpMethod:@"POST"];
//发送请求
[op addCompletionHandler:^(MKNetworkOperation*completedOperation){
//请求成功时执行
//completedOperation 请求成功的数据
NSString *resStr = [completedOperationresponseString];
NSLog(@"%@",resStr);
NSDictionary *d = [str objectFromJSONString];
Info *aInfo = [[Info alloc] initInfoWithDic:d];
//回调
info(aInfo);
}errorHandler:^(MKNetworkOperation*completedOperation,NSError *error){
//请求失败时执行
}];
[self enqueueOperation:op];
return op;
}
MKNetworkKit 使用的更多相关文章
- 一个iOS 框架介绍:MKNetworkKit
http://blog.csdn.net/kmyhy/article/details/12276287 http://blog.csdn.net/mobailwang/article/details/ ...
- AFNetworking、MKNetworkKit和ASIHTTPRequest对比
之前一直在使用ASIHTTPRequest作为网络库,但是由于其停止更新,iOS7上可能出现更多的问题,于是决定更换网络库. 目前比较流行的网络库主要有AFNetworking和MKNetworkKi ...
- AFNetworking vs ASIHTTPRequest vs MKNetworkKit
AFNetworking vs ASIHTTPRequest vs MKNetworkKit
- MKNetworkKit: 网络处理又一利器
没有认识MK之前,即便ASI已经不再更新,也没有启用ASI.因为ASI对于网络的处理更偏向于底层,适合针对各种情形的扩展. 但是,今天我要开始使用 MKNetworkKit了,项目在github上,使 ...
- iOS开发:AFNetworking、MKNetworkKit和ASIHTTPRequest比较
转:http://www.xue5.com/Mobile/iOS/747036.html 之前一直在使用ASIHTTPRequest作为网络库,但是由于其停止更新,iOS7上可能出现更多的问题,于是决 ...
- (转载)iOS Framework: Introducing MKNetworkKit
This article is available in Serbo-Croatian, Japanese and German. (Translations in Serbo-Croatian b ...
- ios MKNetworkKit 的使用
常用框架比如:AFNetworking,ASIHttpRequest,SDWebImage,MKNetWorKit等. iOS5已出来这么久了,而ASIHttpRequest的作者已经申明不更新了,在 ...
- iOS Framework: Introducing MKNetworkKit
MKNetworkKit介绍,入门.翻译 这片文章也有塞尔维亚-克罗地亚语(由Jovana Milutinovich翻译)和日语(由@noradaiko翻译) 假设有个一个网络库可以自己主动的为你处 ...
- iOS Framework: Introducing MKNetworkKit (MKNetworkKit介绍,入门,翻译)
这片文章也有塞尔维亚-克罗地亚语(由Jovana Milutinovich翻译)和日语(由@noradaiko翻译) 如果有个一个网络库能够自动的为你处理cache该有多好啊. 如果有一个网络库能够在 ...
随机推荐
- Android APK反编译就这么简单 详细解释(简介)
学习Android开发过程,你会向别人学习如何应用软件的开发,那些漂亮的动画和复杂的布局可能让你爱不释手,作为开发者.你可能真的想知道的是如何实现的界面效果.然后.您将能够更改应用程序APK反编译查看 ...
- XMLHttpRequest创建对象
首先,介绍一下XMLHttpRequest对象,我们都知道Ajax这不是一个简单的技术,但一些技术的融合.XMLHttpRequest这是Ajax中最为核心的技术.假设没有XMLHttpRequest ...
- mac github工具将命令当下来的代码拖入macgithub中就可以
mac github工具将命令当下来的代码拖入macgithub中就可以,刚開始傻傻的就知道点击那个加入button,总是在当下来的文件夹下创建个文件夹.并且代码不能同步
- hadoop排序组合键的使用情况
于hadoop当处理复杂的业务,需要使用组合键,与单纯的复杂的继承Writable接口,但继承WritableComparable<T>接口.事实上.WritableComparable& ...
- POJ 1088 滑雪 (动规)
滑雪 Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 75664 Accepted: 28044 Description Mich ...
- —软测试—(5)计算机系统CPU组成
事实上,我们不得不很早就接触到电脑系统的知识,但仍然会出现不起眼,现象清醒的认识,非常严重丢分. 要我们花功夫去理解,由于非常多东西我们接触不到,比方校验码.码制等.假设你不去理解而是去记,就非常难參 ...
- 泛型方法动态生成表达式树 Expression
public string GetGridJSON(TraderInfo model) { IQueryable<TraderInfo> Temp = db.TraderInfo; if ...
- android 卸载程序、清除数据、停止服务用法
要实现卸载程序.清除数据.停止正在执行的服务这几大模块,如今将代码粗略总结例如以下: 主要运用到的类有 PackageManager ActivityManager ApplicationInfo R ...
- The Swift Programming Language-官方教程精译Swift(4)字符串和字符
String 是一个有序的字符集合,例如 "hello, world", "albatross".Swift 字符串通过 String 类型来表示,也可以表示为 ...
- 兔子--gradle安装和配置
1.下载gradle,下载--all的这个 点击进入下载页 2.下载下来后,解压.配置环境变量. 编辑path , ....;G:\soft\gradle-2.2.1-all\gradle-2.2.1 ...