描述:

ASIHttpRequest是应用第三方库的方法,利用代码快,减少代码量,提高效率 准备工作:

一、导入第三方库ASIHttpRequest

二、会报很多的错,原因有两个,一个是要导入Xcode中自带的四个文件,一个是他没有使用自动引用计数

三、解决方案 1.导入四个系统文件,分别是 MobileCoreServices.framework SystemConfiguration.framework

CFNetwork.framework libz.1.2.5.dylib 2.手动关掉自动引用计数 在工程的buide phase 中的 compile sources

中,将ASIHhttp类型的,点击后面,添加上-fno-objc-arc 3.运行一遍,就不会报错了 实现异步post请求

#import "ASIHTTPRequest.h"

- (void)viewDidLoad

{

[self requestHttp];

}

-(void)requestHttp

{

//1200792098331

//首先创建一个URL的对象

NSURL * url = [NSURL urlWithString:[NSString stringWithFormat:@"http://api.kuaidi100.com/api?id=d6b9888b0da96f6b&com=%@&nu=%@&show=0&muti=1&order=desc&display=mobile",name]];

NSURL * url =[NSURL URLWithString:[NSString stringWithFormat:@"http://api.kuaidi100.com/api?id=d6b9888b0da96f6b&com=%@&nu=%@&show=0&muti=1&order=desc&display=mobile"]];

NSLog(@"url======%@",url);

再创建一个请求对象

ASIHTTPRequest * request = [ASIHTTPRequest requestWithURL:url];

发送请求,并返回相应的JSon数据

[request setCompletionBlock:

^{

NSError * error = nil;

//创建一个字典,接收返回的JSON数据

NSDictionary * dictionary = [NSJSONSerialization JSONObjectWithData:request.responseData options:kNilOptions error:&error];

NSLog(@"%@",dictionary);

//创建一个数组,并将字典中的数据存放再数组中

NSArray * arr = [dictionary objectForKey:@"data"];

//将数组中的数据变例一下,并将变例后的数据存放在一个可变的数组中

for (NSDictionary * temp in arr)

{

[self.array addObject:[NSString stringWithFormat:@"%@ \n%@",[temp objectForKey:@"time"],[temp objectForKey:@"context"]]];

}

//  将变例后的可变数组中的数据以字符串的形势赋给一个可变字符串对象,同时变例字符串

for(NSString* temp in self.array)

{

[self.mutableString appendString:[NSString stringWithFormat:@"%@\n",temp]];

NSLog(@" temp==== %@",temp);

}

//我这里是将变例后的可变字符串赋给了一个lable

self.jieGuoLale.text = self.mutableString;

NSLog(@"self.jieGuoLale.text======%@",self.jieGuoLale.text);

}];

//如果请求发送失败,则调出警告框

[request setFailedBlock:

^{

UIAlertView * alerteView = [[UIAlertView alloc]initWithTitle:@"提示" message:@"问题警告:网络链接异常,请稍后再试" delegate:nil cancelButtonTitle:@"退出" otherButtonTitles: nil];

[alerteView show];

}];

//发送一个异步请求

[request startAsynchronous];

}

最新文章

  1. RSA加密算法的加密与解密
  2. @ModelAttribute 注解及 POJO入参过程
  3. php入门
  4. 为什么.NET感觉上比Java差一点
  5. WCF 之 DataContract
  6. 【移动开发】安卓Lab2(01)
  7. Linux计算机进程地址空间与内核装载ELF
  8. innodb force recovery
  9. TextView随键盘弹出上移高度
  10. kettle 连接Hadoop
  11. ThreadLocal笔记
  12. Ubuntu16.04 安装flash player
  13. [LeetCode] Find Anagram Mappings 寻找异构映射
  14. Cordova配置与WebApp混合开发环境配置
  15. imperva代理拦截
  16. sklearn.svm.SVC 参数说明
  17. MT【121】耐克数列的估计
  18. BZOJ1030: [JSOI2007]文本生成器(AC自动机)
  19. Word2010插入页码分节符
  20. 学习华为云SWR(CCE)服务的使用方法

热门文章

  1. hdu 4722
  2. win7 安装SQL Server 2005 开发版 图文教程
  3. [转贴]PHP 开发者应了解的 24 个库
  4. [OJ] Lowest Common Ancestor
  5. ajax 初始化请求前携带参数
  6. 关于Session
  7. HDOJ -- 4632 区间DP
  8. 最小生成树之Prim算法,Kruskal算法
  9. HDU-2539 点球大战
  10. selenium webdriver(2)---页面对象定位