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);
}
}
}];