关于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 使用的更多相关文章

  1. 一个iOS 框架介绍:MKNetworkKit

    http://blog.csdn.net/kmyhy/article/details/12276287 http://blog.csdn.net/mobailwang/article/details/ ...

  2. AFNetworking、MKNetworkKit和ASIHTTPRequest对比

    之前一直在使用ASIHTTPRequest作为网络库,但是由于其停止更新,iOS7上可能出现更多的问题,于是决定更换网络库. 目前比较流行的网络库主要有AFNetworking和MKNetworkKi ...

  3. AFNetworking vs ASIHTTPRequest vs MKNetworkKit

    AFNetworking vs ASIHTTPRequest vs MKNetworkKit

  4. MKNetworkKit: 网络处理又一利器

    没有认识MK之前,即便ASI已经不再更新,也没有启用ASI.因为ASI对于网络的处理更偏向于底层,适合针对各种情形的扩展. 但是,今天我要开始使用 MKNetworkKit了,项目在github上,使 ...

  5. iOS开发:AFNetworking、MKNetworkKit和ASIHTTPRequest比较

    转:http://www.xue5.com/Mobile/iOS/747036.html 之前一直在使用ASIHTTPRequest作为网络库,但是由于其停止更新,iOS7上可能出现更多的问题,于是决 ...

  6. (转载)iOS Framework: Introducing MKNetworkKit

    This article is available in Serbo-Croatian,  Japanese and German. (Translations in Serbo-Croatian b ...

  7. ios MKNetworkKit 的使用

    常用框架比如:AFNetworking,ASIHttpRequest,SDWebImage,MKNetWorKit等. iOS5已出来这么久了,而ASIHttpRequest的作者已经申明不更新了,在 ...

  8. iOS Framework: Introducing MKNetworkKit

    MKNetworkKit介绍,入门.翻译 这片文章也有塞尔维亚-克罗地亚语(由Jovana Milutinovich翻译)和日语(由@noradaiko翻译)  假设有个一个网络库可以自己主动的为你处 ...

  9. iOS Framework: Introducing MKNetworkKit (MKNetworkKit介绍,入门,翻译)

    这片文章也有塞尔维亚-克罗地亚语(由Jovana Milutinovich翻译)和日语(由@noradaiko翻译) 如果有个一个网络库能够自动的为你处理cache该有多好啊. 如果有一个网络库能够在 ...

随机推荐

  1. NET动态调用WebService

    NET动态调用WebService 这不是一篇教你了解WebService的博文,也不是对WebService的深入理解, 这是一篇教你在开发过程中,如果动态的调用WebService一个方法. 在比 ...

  2. jQuery - 基于serializeArray的serializeObject

    将表单序列化成JSON对象,注意不管是自实现的serializeObject()还是原生的serializeArray(),所要序列化的控件都必须要有name,而不是id jQuery.prototy ...

  3. Chapter 2 User Authentication, Authorization, and Security(3):保server避免暴力袭击

    原版的:http://blog.csdn.net/dba_huangzj/article/details/38756693,专题文件夹:http://blog.csdn.net/dba_huangzj ...

  4. linux_之sed用法

    sed是一个很好的文件处理工具,本身是一个管道命令,主要是以行为单位进行处理,可以 将数据行进行替换.删除.新增.选取等特定工作,下面先了解一下sed的用法sed命令行格式为:         sed ...

  5. Web字体@font-face对于中文字体的使用

    今天算是刚开始玩博客园..感觉很新鲜在首页 上看到了一个博客http://www.cnblogs.com/liuminghai/p/4238256.html是关于web文字的,挺不错 但是B/S的前端 ...

  6. Log4j2 简明教程

    一.概述 log4j2官方文档内容非常多,要一次性了解全部是不可能的.正确的步骤应当是先了解最常见的配置,当发现原有知识无法解决问题,再重新查看文档看有没有合适的配置.下面将从文件结构入手,再到简单的 ...

  7. TRILL浅析

    1 TRILL概述 TRILL的全称就是Transparent Interconnection of Lots of Links,顾名思义,其本质就是将非常多条链路透明地组织在一起,以致于上层IP应用 ...

  8. Python编写网页爬虫爬取oj上的代码信息

    OJ升级,代码可能会丢失. 所以要事先备份. 一開始傻傻的复制粘贴, 后来实在不能忍, 得益于大潇的启示和聪神的原始代码, 网页爬虫走起! 已经有段时间没看Python, 这次网页爬虫的原始代码是 p ...

  9. 云server 性能测试web压力测试

    前言:如今,云server主流.它已成为许多中小型企业的首选server,但是云server它是一个虚拟机.所以性能是一个大问题,从这里开始介绍云server性能测试,云webserver压力测试. ...

  10. Cocos2d-x Lua 阅读Csv文件,使用数据更方便

    在我的书或出售之前,我的源代码,有Csvshadow文件. 也许这是偏见.我与工作将是最长的轮廓Csv,所以,我会帮助不大喜欢它的游戏. Csv文件,非常格式easy,也就是说,一个数据线,字段之间用 ...