IOS使用AFN框架发送POST/GET请求

本文详细介绍了如何使用AFNetworking框架进行网络请求,包括POST和GET两种请求方式的具体实现,并提供了完整的示例代码。同时,还讲解了如何设置请求和响应序列化器,以及如何将服务器返回的数据转换为字典。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 利用第三方框架获取服务器数据(AFNetworking框架);
* 2.使用POST/GET方式进行提交*
3.头部文件导入AFNetworking.h

一:首先看代码POST请求

 //请求的参数
    NSDictionary *parameters = @{@"username":username,
                                 @"password":password
                                 };
    //请求的url
    NSString *urlString = @"http://......../ErpProject/user/getUser";
    //请求的managers
    AFHTTPSessionManager *managers = [AFHTTPSessionManager manager];
    managers.requestSerializer=[AFJSONRequestSerializer serializer];
    //managers.responseSerializer=[AFJSONResponseSerializer serializer];
    managers.responseSerializer.acceptableContentTypes = [NSSet setWithObjects:@"text/html",@"text/plain",@"application/json",@"text/javascript", nil];
    [managers POST:urlString parameters:parameters progress:^(NSProgress * _Nonnull uploadProgress) {
    } success:^(NSURLSessionDataTask * _Nonnull task, id  _Nullable responseObject) {
        NSLog(@"请求成功,服务器返回的信息%@",responseObject);
    } failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {
        NSLog(@"请求失败,服务器返回的错误信息%@",error);
    }];

二:其次看使用GET方式请求

 NSDictionary *dict = @{
                           @"id":@"inedex_id",
                           };
     AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];
    [manager GET:@"http://indexen/cn/com?" parameters:dict progress:nil success:
     ^(NSURLSessionDataTask * _Nonnull task, id  _Nullable responseObject) {
            NSLog(@"请求成功---%@",responseObject);
     } failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {
         NSLog(@"请求失败,服务器返回的错误信息%@",error);
     }];

三:该注意的细节:

    AFHTTPSessionManager *managers = [AFHTTPSessionManager manager];
    managers.requestSerializer=[AFHTTPRequestSerializer serializer];
    managers.responseSerializer=[AFHTTPResponseSerializer serializer];
或者:
    AFHTTPSessionManager *managers = [AFHTTPSessionManager manager];
    managers.requestSerializer=[AFJSONRequestSerializer serializer];
    //managers.responseSerializer=[AFJSONResponseSerializer serializer];

四:转换为字典(有些服务端数据需要转换才可以读区到):

NSDictionary *dic = [NSJSONSerialization JSONObjectWithData:responseObject options:NSJSONReadingMutableContainers error:nil];

五:AFNetworking基本的功能,请求网络数据,就到这里了,如果满意可以给予点赞或者关注,后续还会继续发布更完美的文章,如果有不足之处,可以提出来共同努力!谢谢!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值