// 上传头像
NSString *url = [NSString stringWithFormat:@"%@?requestflag=upheads",kPostUrl];
NSMutableURLRequest* request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:url]];
request.HTTPMethod = @"POST";
request.timeoutInterval = 10.000000;
// Headers
NSString *boundary = @"******";
[request addValue:@"Keep-Alive" forHTTPHeaderField:@"Connection"];
[request addValue:@"UTF-8" forHTTPHeaderField:@"Charset"];
[request addValue:[NSString stringWithFormat:@"multipart/form-data;boundary=%@",boundary] forHTTPHeaderField: @"Content-Type"];
// Body
NSStringEncoding encoding = NSUTF8StringEncoding;
NSMutableData * sendData = [[NSMutableData alloc]init];
[sendData appendData:[[NSString stringWithFormat:@"--%@\r\n",boundary] dataUsingEncoding:encoding]];
NSString *str = [NSString stringWithFormat:@"Content-Disposition: form-data; name=\"upfile\"; filename=\"%@.png\"\r\n",picName];
[sendData appendData:[str dataUsingEncoding:encoding]];
// 得到图片的data
NSData* picData;
// 判断图片是不是png格式的文件
if (UIImagePNGRepresentation(image)) {// 返回为png图像
picData = UIImagePNGRepresentation(image);
} else {// 返回为JPEG图像
picData = UIImageJPEGRepresentation(image, 1.0);
}
[sendData appendData:[[NSString stringWithFormat: @"Content-Length: %ld\r\n\r\n",(long)picData.length] dataUsingEncoding:encoding]];
[sendData appendData:picData];
[sendData appendData:[@"\r\n" dataUsingEncoding:encoding]];
[sendData appendData:[[NSString stringWithFormat:@"--%@--\r\n",boundary] dataUsingEncoding:encoding]];
request.HTTPBody = sendData;
NSHTTPURLResponse *urlResponese;
NSError *error;
NSData* resultData = [NSURLConnection sendSynchronousRequest:request returningResponse:&urlResponese error:&error];
if(([urlResponese statusCode]>=200)&&([urlResponese statusCode]<300)) {
NSDictionary *dict = [NSJSONSerialization JSONObjectWithData:resultData options:NSJSONReadingMutableLeaves error:nil];
NSLog(@"头像返回信息:%@",dict);
if ([dict[@"ret"]intValue] == 1002) {
[self alertViewBackWithMessage:dict[@"retyy"]];
return;
} else {
NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
NSString *imgUrl = [NSString stringWithFormat:@"%@heads/%@.png",kPostUrl,[userDefaults objectForKey:@"number"]];
NSData *imgData = [NSData dataWithContentsOfURL:[NSURL URLWithString:imgUrl]];
[userDefaults setObject:imgData forKey:@"headImg"];
}
} else {
[self alertViewBackWithMessage:@"头像上传失败"];
}