zoukankan      html  css  js  c++  java
  • iOS网络编程-ASIHTTPRequest框架同步请求-备用

    在ASIHTTPRequest框架中与HTTP请求相关的类有:ASIHTTPRequest和ASIFormDataRequest,其中最常用的是ASIHTTPRequest,ASIFormDataRequest是ASIHTTPRequest的子类,ASIFormDataRequest可以发送类似与HTML表单数据,也可以上传数据,默认采用POST请求方法。也可以其它的HTTP请求方法。它们都可以进行异步或同步请求。下面我们从最简单的GET同步请求介绍。

    1、实现GET同步请求

    实现GET同步请求使用最基本请求类ASIHTTPRequest就可以了。我们还是使用MyNotes应用为例,只考虑查询功能实现,修改主视图控制器MasterViewController.m的startRequest方法如下:

    -(void)startRequest
    
    {
    
    NSString *strURL = [[NSString alloc] initWithFormat:
    
    @”http://iosbook3/mynotes/webservice.php?email=%@&type=%@&action=%@”,
    
    @”<你的iosbook1.com用户邮箱>”,@”JSON”,@”query”];
    
    NSURL *url = [NSURL URLWithString:[strURL URLEncodedString]];
    
    ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];
    
    [request startSynchronous];
    
    NSLog(@”请求完成…”);
    
    NSError *error = [request error];
    
    if (!error) {
    
    //NSString *response = [request responseString];
    
    NSData *data  = [request responseData];
    
    NSDictionary *resDict = [NSJSONSerialization JSONObjectWithData:data
    
    options:NSJSONReadingAllowFragments error:nil];
    
    [self reloadView:resDict];
    
    }
    
    }
     


    使用ASIHTTPRequest类,需要引入头文件ASIHTTPRequest.h。

    2、实现POST同步请求

    发送POST方法的请求,无论同步还是异步请求都是使用ASIFormDataRequest类,只不过它们稍微有些不同。本节我们只介绍同步请求下使用ASIFormDataRequest类来发送POST方法。修改主视图控制器MasterViewController.m的startRequest方法如下:

     
    -(void)startRequest
    
    {
    
    NSString *strURL = @”http://iosbook3/mynotes/webservice.php”;
    
    NSURL *url = [NSURL URLWithString:[strURL URLEncodedString]];
    
     
    
    ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url];
    
    [request setPostValue:@ "<你的iosbook1.com用户邮箱>" forKey:@"email"];                
    
    [request setPostValue:@"JSON" forKey:@"type"];
    
    [request setPostValue:@"query" forKey:@"action"];
    
    [request startSynchronous];
    
    NSLog(@”请求完成…”);
    
    NSError *error = [request error];
    
    if (!error) {
    
    //NSString *response = [request responseString];
    
    NSData *data  = [request responseData];
    
    NSDictionary *resDict = [NSJSONSerialization JSONObjectWithData:data
    
    options:NSJSONReadingAllowFragments error:nil];
    
    [self reloadView:resDict];
    
    }
    
    }
  • 相关阅读:
    核函数基础一简单解释
    矩阵的基本性质 之 正规矩阵,矩阵的迹,行列式,伴随矩阵,矩阵的逆,对角矩阵,矩阵求导
    矩阵的基本性质 之 对称矩阵,Hermite矩阵,正交矩阵,酉矩阵
    矩阵的基本性质 之 矩阵加减法,数乘,乘法,转置
    机器学习实战基础(二十七):sklearn中的降维算法PCA和SVD(八)PCA对手写数字数据集的降维
    拉格朗日对偶性
    批处理符号2
    批处理符号1
    set命令
    goto命令
  • 原文地址:https://www.cnblogs.com/isItOk/p/5215517.html
Copyright © 2011-2022 走看看