//分界线的标识符 NSString *TWITTERFON_FORM_BOUNDARY = @"AaB03x"; NSString *urlString = @""; NSMutableURLRequest* request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:urlString] cachePolicy:NSURLRequestReloadIgnoringLocalCacheData timeoutInterval:10]; NSString *MPboundary=[[NSString alloc]initWithFormat:@"--%@",TWITTERFON_FORM_BOUNDARY]; NSString *endMPboundary=[[NSString alloc]initWithFormat:@"%@--",MPboundary]; //要上传的图片 NSDictionary *params = [[NSDictionary alloc] init]; UIImage *image = [UIImage imageNamed:@"0.JPG"]; NSData *image2 = UIImageJPEGRepresentation(image, 0.5); NSMutableString *body=[[NSMutableString alloc]init]; NSArray *keys = [[NSArray alloc] initWithObjects:@"desc",@"albumId",@"sid",nil]; for(int i=0;i<[keys count];i++) { NSString *key=[keys objectAtIndex:i]; if(![key isEqualToString:@"pic"]) { [body appendFormat:@"%@\r\n",MPboundary]; [body appendFormat:@"Content-Disposition: form-data; name=\"%@\"\r\n\r\n",key]; [body appendFormat:@"%@\r\n",@"119"]; } } [body appendFormat:@"%@\r\n",MPboundary]; [body appendFormat:@"Content-Disposition: form-data; name=\"picFile\"; filename=\"picFile.png\"\r\n"]; [body appendFormat:@"Content-Type: image/png\r\n\r\n"]; NSString *end=[[NSString alloc]initWithFormat:@"\r\n%@",endMPboundary]; NSMutableData *myRequestData=[NSMutableData data]; [myRequestData appendData:[body dataUsingEncoding:NSUTF8StringEncoding]]; [myRequestData appendData:image2]; [myRequestData appendData:[end dataUsingEncoding:NSUTF8StringEncoding]]; NSString *content=[[NSString alloc]initWithFormat:@"multipart/form-data; boundary=%@",TWITTERFON_FORM_BOUNDARY]; [request setValue:content forHTTPHeaderField:@"Content-Type"]; [request setValue:[NSString stringWithFormat:@"%d", [myRequestData length]] forHTTPHeaderField:@"Content-Length"]; [request setHTTPBody:myRequestData]; [request setHTTPMethod:@"POST"]; //建立连接,设置代理 NSURLConnection *conn = [[NSURLConnection alloc] initWithRequest:request delegate:self]; if(conn){ NSLog(@"连接成功"); } //提示用户上传成功 需要判断返回的json NSData *returnData = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil]; NSString *returnString = [[NSString alloc] initWithData:returnData encoding:NSUTF8StringEncoding]; UIAlertView *alert = [[UIAlertView alloc]initWithTitle:@"通知" message:@"图片上传成功" delegate:self cancelButtonTitle:@"Cancel" otherButtonTitles:nil, nil]; [alert show]; NSLog(@"%@",returnString);
iphone 图片上传以及参数传递
猜你喜欢
转载自longquan.iteye.com/blog/1632778
今日推荐
周排行