iOS开发 使用AFNetworking实现多张图片上传

来源:互联网 发布:mac迅雷速度慢 编辑:程序博客网 时间:2024/06/05 04:56
#import "ViewController.h"#import "AFNetworking.h"@interface ViewController ()@end@implementation ViewController- (NSMutableArray*)arrayImage{    if (!_arrayImage) {        self.arrayImage = [NSMutableArray array];    }    return _arrayImage;}- (void)viewDidLoad {    [super viewDidLoad];    for (int i = 0; i < 2; i++) {        NSString *str = [NSString stringWithFormat:@"image%d", i];        UIImage *image = [UIImage imageNamed:str];        [self.arrayImage addObject:image];    }}- (IBAction)uploadImages:(id)sender{    NSMutableDictionary *parameters = [NSMutableDictionary dictionary];    //需要上传服务器的参数    [parameters setValue:@"64611" forKey:@"supplier_id"];    [parameters setValue:@"1016" forKey:@"user_id"];    NSString *url = @"http://mobile.pinlehuo.com/api.php?m=MemberOper&a=supplierPicsUpload";    AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];    /**     *  post : 上传的网址     *     *  parameters 服务器需要上传的参数     *     */    [manager POST:url parameters:parameters constructingBodyWithBlock:^(id<AFMultipartFormData> formData) {     /*   参数说明:        1. fileData:   要上传文件的数据        2. name:       负责上传文件的远程服务中接收文件使用的字段名称        3. fileName:   要上传文件的文件名        4. mimeType:   要上传文件的文件类型        提示,在日常开发中,如果要上传图片到服务器,一定记住不要出现文件重名的问题!        这个问题,通常涉及到前端程序员和后端程序员的沟通。        通常解决此问题,可以使用系统时间作为文件名!    */        // 1) 取当前系统时间        NSDate *date = [NSDate date];        // 2) 使用日期格式化工具        NSDateFormatter *formatter = [[NSDateFormatter alloc]init];        // 3) 指定日期格式        [formatter setDateFormat:@"yyyyMMddHHmmss"];        NSString *dateStr = [formatter stringFromDate:date];        for (int i = 0; i < _arrayImage.count; i++) {            UIImage *image = _arrayImage[i];            NSData *data = UIImageJPEGRepresentation(image,0.5);            // 4) 使用系统时间生成一个文件名            NSString *fileName = [NSString stringWithFormat:@"%@%d.jpg", dateStr,i + 1];            [formData appendPartWithFileData:data name:@"environment[]" fileName:fileName mimeType:@"image/jpg"];        }    } success:^(AFHTTPRequestOperation *operation, id responseObject) {        NSLog(@"Success: 成功");    } failure:^(AFHTTPRequestOperation *operation, NSError *error) {        NSLog(@"Error: %@", error);    }];}@end
0 0
原创粉丝点击