(十二)-利用ASIHTTPRequest进行异步获取数据

2024-05-31 06:48

本文主要是介绍(十二)-利用ASIHTTPRequest进行异步获取数据,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!


IOS开发---菜鸟学习之路--(十二)-利用ASIHTTPRequest进行异步获取数据

想要实现异步获取的话我这边了解过来有两个非常简单的方式

一个是利用ASIHTTPRequest来实现异步获取数据

另一个则是利用MBProgressHUD来实现异步获取数据

本章就先来讲解如何利用ASIHTTPRequest类来实现异步数据获取

首先大家需要百度一下ASIHTTPRequest 然后看一下百度里搜到的那些文章(不要问具体是那篇,因为我发现百度搜过来的东西全部都是一样的,所以。。。。大致看下 哪篇都一样的就知道我说的是哪篇了,这也是为什么我决定自己写点内容的原因。再次吐槽百度个坑爹的家伙。)

看完了的话就接着看我们的内容吧

需要添加的类库

CFNetwork.framework ,SystemConfiguration.framework, MobileCoreServices.framework,CoreGraphics.framework和libz.1.2.3.dylib

我就直接上代码了我这边使用的是ASIFormDataRequest,使用前需要引用头文件 ASIFormDataRequest.h

我这边在GetWebInfo类里面定义了一个nsstring 类型的mywebaddress属性用来存放地址,这样的话可以便于我们管理地址

复制代码
#pragma mark #pragma 异步加载数据 // 初始化数据 异步加载-( void )initListData{  //  NSURL *url=[NSURL URLWithString:@" http://xxx.xxx.xxx.xxx /WebServicesForIOS/IOSWebservices.ashx?Method=GetNewsbyPage&type=公共新闻&rows=4&page=1"];  GetWebInfo *getwebinfo= [[GetWebInfo alloc] init]; NSURL *url= [NSURL URLWithString:getwebinfo.mywebaddress]; ASIFormDataRequest *request= [ASIFormDataRequest requestWithURL:url]; NSString *mypage=[NSString stringWithFormat: @" %d " ,_page ]; [request addPostValue: @" GetNewsbyPage " forKey: @" Method " ]; [request addPostValue: @" 公共新闻 " forKey: @" type " ]; [request addPostValue: @" 4 " forKey: @" rows " ]; [request addPostValue:mypage forKey: @" page " ]; [request setDelegate:self]; [request startAsynchronous];} // 异步加载成功- ( void)requestFinished:(ASIHTTPRequest * )request{ NSData*responseData =  [request responseData]; NSArray *keys =  [NSJSONSerialization JSONObjectWithData:responseData options:NSJSONReadingMutableContainers error:nil]; allcount=[[keys valueForKey: @" total " ] integerValue]; [self.list addObject:[keys valueForKey: @" rows " ]]; [_tableView reloadData];} // 异步加载失败- ( void)requestFailed:(ASIHTTPRequest * )request{  // NSError *error = [request error]; UIAlertView *alert=[[UIAlertView alloc] initWithTitle: @" 提示信息! " message: @" 加载数据失败!网络连接失败! "  delegate :Nil cancelButtonTitle: @" 确定 " otherButtonTitles: nil]; [alert show];}
复制代码

 

代码就是这么简单,一个是异步获取失败方法,一个是异步获取成功方法。。。。 

然后就没有然后了。。。。就是这么的简单。

OK本章内容非常少,但是。。。却会很使用,然后。。真的就是这么简单。。

下一章会介绍如何利用 MBProgressHUD 进行异步获取数据。。那个。。更加的简单。

这篇关于(十二)-利用ASIHTTPRequest进行异步获取数据的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1017524

相关文章

使用MongoDB进行数据存储的操作流程

《使用MongoDB进行数据存储的操作流程》在现代应用开发中,数据存储是一个至关重要的部分,随着数据量的增大和复杂性的增加,传统的关系型数据库有时难以应对高并发和大数据量的处理需求,MongoDB作为... 目录什么是MongoDB?MongoDB的优势使用MongoDB进行数据存储1. 安装MongoDB

Linux使用fdisk进行磁盘的相关操作

《Linux使用fdisk进行磁盘的相关操作》fdisk命令是Linux中用于管理磁盘分区的强大文本实用程序,这篇文章主要为大家详细介绍了如何使用fdisk进行磁盘的相关操作,需要的可以了解下... 目录简介基本语法示例用法列出所有分区查看指定磁盘的区分管理指定的磁盘进入交互式模式创建一个新的分区删除一个存

C#使用HttpClient进行Post请求出现超时问题的解决及优化

《C#使用HttpClient进行Post请求出现超时问题的解决及优化》最近我的控制台程序发现有时候总是出现请求超时等问题,通常好几分钟最多只有3-4个请求,在使用apipost发现并发10个5分钟也... 目录优化结论单例HttpClient连接池耗尽和并发并发异步最终优化后优化结论我直接上优化结论吧,

使用Python进行文件读写操作的基本方法

《使用Python进行文件读写操作的基本方法》今天的内容来介绍Python中进行文件读写操作的方法,这在学习Python时是必不可少的技术点,希望可以帮助到正在学习python的小伙伴,以下是Pyth... 目录一、文件读取:二、文件写入:三、文件追加:四、文件读写的二进制模式:五、使用 json 模块读写

Java如何通过反射机制获取数据类对象的属性及方法

《Java如何通过反射机制获取数据类对象的属性及方法》文章介绍了如何使用Java反射机制获取类对象的所有属性及其对应的get、set方法,以及如何通过反射机制实现类对象的实例化,感兴趣的朋友跟随小编一... 目录一、通过反射机制获取类对象的所有属性以及相应的get、set方法1.遍历类对象的所有属性2.获取

使用zabbix进行监控网络设备流量

《使用zabbix进行监控网络设备流量》这篇文章主要为大家详细介绍了如何使用zabbix进行监控网络设备流量,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录安装zabbix配置ENSP环境配置zabbix实行监控交换机测试一台liunx服务器,这里使用的为Ubuntu22.04(

在Pandas中进行数据重命名的方法示例

《在Pandas中进行数据重命名的方法示例》Pandas作为Python中最流行的数据处理库,提供了强大的数据操作功能,其中数据重命名是常见且基础的操作之一,本文将通过简洁明了的讲解和丰富的代码示例,... 目录一、引言二、Pandas rename方法简介三、列名重命名3.1 使用字典进行列名重命名3.编

python安装完成后可以进行的后续步骤和注意事项小结

《python安装完成后可以进行的后续步骤和注意事项小结》本文详细介绍了安装Python3后的后续步骤,包括验证安装、配置环境、安装包、创建和运行脚本,以及使用虚拟环境,还强调了注意事项,如系统更新、... 目录验证安装配置环境(可选)安装python包创建和运行Python脚本虚拟环境(可选)注意事项安装

如何使用celery进行异步处理和定时任务(django)

《如何使用celery进行异步处理和定时任务(django)》文章介绍了Celery的基本概念、安装方法、如何使用Celery进行异步任务处理以及如何设置定时任务,通过Celery,可以在Web应用中... 目录一、celery的作用二、安装celery三、使用celery 异步执行任务四、使用celery

SpringBoot使用minio进行文件管理的流程步骤

《SpringBoot使用minio进行文件管理的流程步骤》MinIO是一个高性能的对象存储系统,兼容AmazonS3API,该软件设计用于处理非结构化数据,如图片、视频、日志文件以及备份数据等,本文... 目录一、拉取minio镜像二、创建配置文件和上传文件的目录三、启动容器四、浏览器登录 minio五、