iOS AFNetworking请求数据(get/post)

来源:互联网 发布:淘宝 如何查 虚假交易 编辑:程序博客网 时间:2024/05/22 09:47

AFNetworking 是常用的网络请求第三方,下面我就写一下用AFN进行get请求和post请求

我把AFN单独封装到了一个类里,并写在了一个+号方法里,以便调用.

GET

//AFN请求数据+(void)getDataWithURL:(NSString *)url blcok:(AppToolsBlock)blcok{    //如果网址中有中文需要使用 : 中文编码    NSString *urlEncode = [url stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet URLQueryAllowedCharacterSet]];    AFHTTPRequestOperationManager* manager = [AFHTTPRequestOperationManager manager];    manager.responseSerializer.acceptableContentTypes = [NSSet setWithObjects:@"text/plain",@"text/json",@"application/json",@"text/javascript",@"text/html",nil];    [manager GET:urlEncode parameters:nil success:^(AFHTTPRequestOperation *operation, id responseObject) {        //NSLog(@"使用AFN进行get请求 ===  %@",responseObject);        blcok(responseObject);    } failure:^(AFHTTPRequestOperation *operation, NSError *error) {        NSLog(@"失败==== %@",error);    }];}

get请求和post请求区别:参数:
get请求的参数是直接添加在URL路径上,使用简单,但是用户的隐私信息都会暴露在外面(不安全)
post请求的参数会将一部分或者全部拿出去放在一个body体里,转成data形式数据来发送给报告者,外界不易截取(安全性高)

POST

+ (void)getDataWithPath:(NSString *)path Body:(NSDictionary *)body block:(AppToolsBlock)block{    NSString *urlStr = path;        NSString *urlEncode = [urlStr stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet URLQueryAllowedCharacterSet]];    //body体    NSDictionary *bodyDic = body;    AFHTTPRequestOperationManager *netManager = [AFHTTPRequestOperationManager manager];    netManager.responseSerializer.acceptableContentTypes = [NSSet setWithObjects:@"text/plain",@"text/json",@"application/json",@"text/javascript",@"text/html",nil];    [netManager POST:urlEncode parameters:bodyDic success:^(AFHTTPRequestOperation *operation, id responseObject) {        //        NSDictionary *dic = responseObject;        //        NSLog(@"post请求成功====%@", dic);        block(responseObject);    } failure:^(AFHTTPRequestOperation *operation, NSError *error) {        NSLog(@"错误信息%@", error);    }];}

在使用的时候导入这个类的头文件,直接调用方法,代入参数即可

0 0
原创粉丝点击