iOS 上传头像 (multipart/form-data)

NSData *imageData;

    NSString *mimetype;

    NSString *documentsDirectory = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)objectAtIndex:0];

     NSString *imageFilePath = [documentsDirectory stringByAppendingPathComponent:@"selfHeaderImage"];

    UIImage *img = [UIImage imageWithContentsOfFile:imageFilePath];

     //判断下图片是什么格式

       if (UIImagePNGRepresentation(img) != nil) {

           mimetype = @"image/png";

           imageData = UIImagePNGRepresentation(img);

       }else{

           mimetype = @"image/jpeg";

           imageData = UIImageJPEGRepresentation(img, 1.0);

       }

    NSString *urlString = [[[AFRequestNetworkingSession sharedSessionManager]getBaseUrlString]stringByAppendingString:@"/api/user/update"];

    NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];

    NSString *token = [userDefaults objectForKey:@"token"];

    NSDictionary *parameters = @{@"nickname":nickname,@"icon":imageData};//,@"icon":filePath

    NSDictionary *headers =@{@"Authorization":token};

 

    AFHTTPSessionManager *manager = [[AFRequestNetworkingSession sharedSessionManager]getManagerWithHeader:headers];;

 

    [manager POST:urlString parameters:parameters headers:headers constructingBodyWithBlock:^(id<AFMultipartFormData>  _Nonnull formData) {

        

        NSDateFormatter *formatter = [[NSDateFormatter alloc]init];

        formatter.dateFormat = @"yyyyMMddHHmmss";

        NSString *str = [formatter stringFromDate:[NSDate date]];

        NSString *filename = [NSString stringWithFormat:@"%@.jpg",str];

        

        [formData appendPartWithFileData:imageData name:@"icon" fileName:filename mimeType:mimetype];

        

    } progress:^(NSProgress * _Nonnull uploadProgress) {

 

    } success:^(NSURLSessionDataTask * _Nonnull task, id  _Nullable responseObject) {

        NSLog(@"responseObject == %@",(NSDictionary *)responseObject);

          if ([[responseObject objectForKey:@"code"]intValue]==0) {

                if (requestSuccess) {

                        requestSuccess(responseObject);

                                    }

                    }

                else{

                    if (requestFail) {

                         requestFail(responseObject);

                        }

                    }

 

    } failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {

        NSLog(@"error == %@",error);

        if (error) {

            if (requestError) {

                requestError(error);

                            }

        }

    }];

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值