牛骨文教育服务平台(让学习变的简单)
博文笔记

(IOS开发)使用afn往服务器传图片

创建时间:2016-09-20 投稿人: 浏览次数:732
AFHTTPRequestOperationManager *manager;

    //    NSDictionary *parameters = @{@"uid": @"EFGH"};//对应上面接口非图片的参数 file是图片的key

    //创建请求

    

    manager = [AFHTTPRequestOperationManager manager];

    

    //设置请求的解析器为AFHTTPResponseSerializer(用于直接解析数据NSData),默认为AFJSONResponseSerializer(用于解析JSON)

    

    //    manager.responseSerializer = [AFHTTPResponseSerializer serializer];

    

    //发送POST请求,添加需要发送的文件,此处为图片

    

    [manager POST:@"接口地址" parameters:nil constructingBodyWithBlock:^(id<AFMultipartFormData> formData) {

        

        //添加图片,并对其进行压缩(0.0为最大压缩率,1.0为最小压缩率)

        

        //   UIImageJPEGRepresentation([UIImage imageNamed:@"图片名字(注意后缀名)"], 1.0);

        

        NSData *imageData = UIImagePNGRepresentation(newPhoto);

        

        //添加要上传的文件,此处为图片

        

        [formData appendPartWithFileData:imageData name:@"uploadFile" fileName:@"icon.png"mimeType:@"image/png"];

        

    } success:^(AFHTTPRequestOperation *operation, id responseObject) {

        

        //请求成功(当解析器为AFJSONResponseSerializer时)

        

        NSLog(@"Success: %@", responseObject);

        

        //请求成功(当解析器为AFHTTPResponseSerializer时)

        

        //        NSString *JSONString = [[NSString alloc] initWithData:responseObject encoding:NSUTF8StringEncoding];

        

        //        NSLog(@"success:%@", JSONString);

        

    } failure:^(AFHTTPRequestOperation *operation, NSError *error) {

        

        //请求失败

        NSLog(@"Error: %@", error);

    }];

声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。