0

我成功完成了 75% 的任务。主要问题是图片上传。连接已建立。但无法上传编码数据。我正在这样编写代码

UIImage *naveen = [UIImage  imageWithData: [NSData dataWithContentsOfURL:[NSURL  

URLWithString:@"http://www.watblog.com/wp-content/uploads/2011/11/b.jpg"]]];

myimages.image=naveen; 

通过使用上面的代码,我非常成功地加载了图像。

我写的上面的代码确实加载方法。

之后,我采取了 IBAction,因为我写了下面的代码

NSData *imageData = UIImageJPEGRepresentation(myimages.image, 90);

NSString *encodedImage = [Base64 encode:imageData];

NSLog(@"my encoded image is 6666%@",encodedImage);

//这里我正在获取编码的图像数据

它也成功了

NSString *urlString = @"http://192.168.1.105:9966/PC/store";


NSMutableURLRequest *request = [[[NSMutableURLRequest alloc] init] autorelease];

    [request setURL:[NSURL URLWithString:urlString]];

    [request setHTTPMethod:@"POST"];


NSString *boundary = [NSString stringWithString:@"--------------------------

-14737809831466499882746641449"];

NSString *contentType = [NSString stringWithFormat:@"multipart/form-data; 

boundary=%@",boundary];


[request addValue:contentType forHTTPHeaderField: @"Content-Type"];

 NSMutableData *body = [NSMutableData data];

[body appendData:[[NSString stringWithFormat:@"rn--%@rn",boundary] 

dataUsingEncoding:NSUTF8StringEncoding]];


  [body appendData:[[NSString stringWithString:@"Content-Disposition: form-data; 

name=\"encodedImage\"; filename=\"http://www.watblog.com/wp-

content/uploads/2011/11/b.jpg\"\r\n"] dataUsingEncoding:NSUTF8StringEncoding]];


[body appendData:[[NSString stringWithString:@"Content-Type: application/octet-streamrnrn"] 

dataUsingEncoding:NSUTF8StringEncoding]];

    [body appendData:[NSData dataWithData:imageData]];

    [body appendData:[[NSString stringWithFormat:@"rn--%@--rn",boundary] 

dataUsingEncoding:NSUTF8StringEncoding]];

[request setHTTPBody:body];

NSData *returnData = [NSURLConnection sendSynchronousRequest:request returningResponse:nil 

error:nil];

NSString *returnString = [[NSString alloc] initWithData:returnData 

encoding:NSUTF8StringEncoding];

NSLog(returnString);

}

每当我执行上述代码时,返回字符串都是

最终[3077:f803]

html>Apache Tomcat/6.0.35 - 错误报告

系列:Tahoma,Arial,无衬线;颜色:白色;背景颜色:#525D76;字体大小:22px;} H2

{font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:16px;}

H3 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-

大小:14px;} 正文 {字体系列:Tahoma,Arial,无衬线;颜色:黑色;背景颜色:白色;} B

{font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;} P {font-

系列:Tahoma,Arial,无衬线;背景:白色;颜色:黑色;字体大小:12px;}A {颜色:

黑色;}A.name {颜色:黑色;}HR {颜色:#525D76;}-->

HTTP 状态

404 - /PC/商店

类型 状态报告

消息/PC/商店

描述请求的资源

(/PC/store) 不可用。

阿帕奇

雄猫/6.0.35

请任何人帮助我如何传递我的编码数据

我是 iPhone 编程的初学者

4

1 回答 1

0

这似乎更像是后端服务器的问题。尝试使用任何其他方法上传文件 - 即从简单的 HTML 表单。

这可能不是一个线索,但为什么您使用完整的 URL 作为文件名?

[body appendData:[[NSString stringWithString:@"Content-Disposition: form-data; name=\"encodedImage\"; filename=\"http://www.watblog.com/wp-content/uploads/2011/11/b.jpg\"\r\n"] dataUsingEncoding:NSUTF8StringEncoding]];
于 2012-04-15T11:07:40.047 回答