iOS 网络数据请求和Json 解析

 移动开发过程中,很多时候,我们的数据来自网络别人提供的数据接口,所以我们做app的时候,需要用别人提供的接口把数据解析下载到本地,然后建立数据模型,再把数据显示到UI 界面上,网络上一搬提供两种数据的接口
Json 数据,xml 数据.
1.Json 下载并解析
//.m  文件中定义两个对象

@interface ViewController ()<NSURLConnectionDataDelegate>
{
    NSURLConnection *_urlConnection;  //用于下载的对象
    NSMutableData *_downloadData;     //存储下载的数据
}


//然后需要在viewDIdLoad 方法中去初始化两个对象:
- (void)viewDidLoad
{
NSString *urlString=@"http://192.168.88.8/sns/my/user_list.php?page=1d&number=20";
//创建并初始化_urlConnection 对象
//参数说明:
  //参数1.initWithRequest:网络请求url
 // 参数2. delegate 网络请求成功后处理事件,需要遵守     NSURLConnectionDataDelegate协议,
//参数3.startImmediately  是否立即下载,一般都是YES

      _urlConnection=[[NSURLConnection alloc]initWithRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:urlString]] delegate:self startImmediately:YES];

//创建_downloadData  并初始化对象

_downloadData=[[NSMutableData alloc]init];


//遵守NSURLConnectionDataDelegate协议的方法
//当接收到服务器响应时执行

-(void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response
{
    NSLog(@"开始下载数据");
}
//作用当接收到数据时执行,下载数据较多的时候执行,需要将每次下载的数据合并到一
-(void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data
{
    //每次下载到数据都添加到数据中
    NSLog(@"下载数据中");
    [_downloadData appendData:data];
    
}
//下载完成
-(void)connectionDidFinishLoading:(NSURLConnection *)connection
{
    
    
    //数据下载完成后,解析下载完成的数据
    //Serialization  把json格式的数据,解析为oc 的数据类型
   //Json 格式的最上层是什么数据类型,就定义什么数据类型去接收数据

  NSDictionary *dict= [NSJSONSerialization  JSONObjectWithData:_downloadData options: NSJSONReadingMutableContainers error:nil ];
   //打印验证数据是否解析成功
    NSLog(@"dict=%@",dict);
      //接着建立数据模型存储数据
      ………

}




 
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值