AFN的基本使用

作者: 大玲_ | 来源:发表于2015-06-23 07:46 被阅读2985次

这篇文章会讲到:
1.网络状态
2.post请求
3.get请求
4.actionsheet
5.从图片库和相机上传图片
6.我遇到的一个小问题,不知道问什么

1.检测网络状态

    AFNetworkReachabilityManager *mgr = [AFNetworkReachabilityManager sharedManager];
    [mgr setReachabilityStatusChangeBlock:^(AFNetworkReachabilityStatus status) {
        NSLog(@"%ld",(long)status);
    }];
    [mgr startMonitoring];

2.POST请求

#pragma mark - post 请求  返回json
- (void)postJson
{
    //1.创建一个操作请求的管理证
    AFHTTPRequestOperationManager *mgr = [AFHTTPRequestOperationManager manager];
    //请求参数
    NSMutableDictionary *dict = [NSMutableDictionary dictionary];
    dict[@"username"] = @"zhangjl";
    dict[@"password"] = @"zhjl";
    NSString *url = @"http://localhost/01/post.php";
    [mgr POST:url parameters:dict constructingBodyWithBlock:^(id<AFMultipartFormData> formData) {
        NSLog(@"formdata--- %@",formData);
    } success:^(AFHTTPRequestOperation *operation, id responseObject) {
        NSLog(@"请求成功-%@",responseObject[@"message"]);
    } failure:^(AFHTTPRequestOperation *operation, NSError *error) {
        NSLog(@"请求失败--%@",error);
    }];
}

3.GET请求

#pragma mark - 获得数据
- (void)getData
{
    //1.创建请求对象管理
    AFHTTPRequestOperationManager *mgr = [AFHTTPRequestOperationManager manager];
    //声明一下 服务器返回使用http 默认的方式返回数据,不是xml json比如下载文件
    //不要对数据库返回的数据格式化
    //如果是文件下载 肯定是这个
    mgr.responseSerializer = [AFHTTPResponseSerializer serializer];
    //2.接下来发送get请求
    NSString *url = @"http://localhost/01/get.php";
    NSMutableDictionary *params = [NSMutableDictionary dictionary];
    params[@"username"] = @"张D大调玲";
    params[@"password"] = @"zhjl";
    [mgr GET: url parameters:params success:^(AFHTTPRequestOperation *operation, id responseObject) {
        //请求成功的时候调用
        NSDictionary *dict = [NSJSONSerialization JSONObjectWithData:responseObject options:NSJSONReadingMutableLeaves error:nil];
        NSLog(@"%@",dict[@"message"]);
    } failure:^(AFHTTPRequestOperation *operation, NSError *error) {
        //请求失败时候调用
        NSLog(@"请求失败");
    }];
    
}

注意:要注意根据不同的情况不同的格式处理
mgr.responseSerializer = [AFHTTPResponseSerializer serializer];

4.UIActionsheet

//创见:
UIActionSheet *sheet = [[UIActionSheet alloc]initWithTitle:@"请选择图片" delegate:self cancelButtonTitle:@"取消" destructiveButtonTitle:nil otherButtonTitles:@"拍照",@"相册",nil ];
    self.sheet = sheet;
    [sheet showInView:self.view.window];

//遵守协议 实现方法

遵守这个协议:UIActionSheetDelegate
- (void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex
{
//index就是第几个按钮
}

5.遇到的问题

早就谢了这篇文章,但是遇到了一些问题,一直没有解决,我还是发布出去吧!希望遇到过这个错误的朋友告诉我一下!

错误描述:直接把AFN拖入到项目中,引入.h文件,使用相关方法就报错!(在别人那里创建发送给我就可以使用,自己创建就不行)
错误截图:

Snip20150623_2.png

别人建的项目都有这里边都有很多afn的文件,我这个没有!

Snip20150623_4.png Snip20150623_1.png

我尝试了什么pch很多方法,都不对,感觉这个应该是 一个很菜的错误,希望大家谁遇到过告诉我谢谢。不胜感激!!!

这个很菜错误解决了:解决在下一章文章:folder与group

相关文章

  • 04 AFN

    一: AFN框架基本使用 #######1.1 AFN内部结构 #######1.2 AFN的基本使用 1, 发送...

  • iOS开发-AFNetworking框架基本使用

    一、AFN框架基本使用 1.1 AFN内部结构 1.2 AFN的基本使用 (1)发送POST请求的方式 (2)使用...

  • AFN框架使用

    AFN框架使用 1.AFN框架基本使用 2 .AFN的基本使用 (1)发送GET请求的两种方式(POST同) (2...

  • AFN框架基本使用

    一、AFN内部结构 AFN结构体 NSURLConnection: NSURLSession 二、AFN的基本使用...

  • AFN

    1.AFN框架基本使用 1 AFN内部结构 2 AFN的基本使用 (1)发送GET请求的两种方式(POST同) (...

  • AFNetWorking框架

    1.AFN框架基本使用 1.1 AFN内部结构 1.2 AFN的基本使用 (1)发送GET请求的两种方式(POST...

  • AFN 基本使用

    GET&POST 请求 文件下载 文件上传 序列化处理 监听网络状态 GET 方式发送请求 POST方式发送请求 ...

  • AFN基本使用

    AFN基本使用 简介 框架结构NSURLSessionNSURLSessionManager对NSURLSessi...

  • 多线程网络07

    1 AFN基本使用(GET和POST) 2 AFN实现文件下载 3 AFN实现文件上传 5 AFN序列化相关处理 ...

  • AFN的基本使用

    这篇文章会讲到:1.网络状态2.post请求3.get请求4.actionsheet5.从图片库和相机上传图片6....

网友评论

  • 大玲_:@我相信 谢谢,都困扰我还几天了,就是group和folder的区别!我把那个单选按钮没点。非常感谢
  • f289b72b44e9:是你在导入框架时 把文件拖入项目时 没有勾上 “Add to targets: √” 意思就是导入的文件没有添加到项目中
  • yunFeng:挺好,那个添加一下试下,不行就新建个工程

本文标题:AFN的基本使用

本文链接:https://www.haomeiwen.com/subject/tycsqttx.html