首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >服务器在从iPhone应用程序发布时不获取图像数据

服务器在从iPhone应用程序发布时不获取图像数据
EN

Stack Overflow用户
提问于 2013-01-10 10:44:15
回答 1查看 111关注 0票数 0

我正在张贴多个图片到服务器网址,但我面临一个问题。发布图像数据后,服务器只获取我发送的图像数据,剩下的数据是first.The在发布时的null.But,我可以打印这些数据(NSLog)。

请帮助我理解在这里给出代码的问题。

UploadImageViewController.m

代码语言:javascript
运行
复制
-(IBAction)upPic:(id)sender{
UploadImage *up_image = [[UploadFood alloc] init];

  [up_image sendServerRequests:[NSDictionary  dictionaryWithObjectsAndKeys:@"pic1.jpg",@"filename",@"pic2.jpg",@"filename2", nil]  file:sharedClass.picData file1:sharedClass.picData2];


   }  

UploadImage.m

代码语言:javascript
运行
复制
-(void)sendServerRequests:(NSDictionary *)bits file:(NSData *)file file1:(NSData *)file1 file2:(NSData *)file2 {
 NSLog(@"file  %@",file );


 [postbody appendData:[NSData dataWithData:file]];

 [postbody appendData:[[NSString stringWithFormat:@"Content-Disposition: form-data;  name=\"image2\"; filename=\"%@\"\r\n", [bits objectForKey:@"filename2"]]  dataUsingEncoding:NSUTF8StringEncoding]];
 [postbody appendData:[@"Content-Type: application/octet-stream\r\n\r\n" dataUsingEncoding:NSUTF8StringEncoding]];

  NSLog(@"file1 %@",file1);


  [postbody appendData:[NSData dataWithData:file1]];

  [postbody appendData:[[NSString stringWithFormat:@"Content-Disposition: form-data; name=\"image3\"; filename=\"%@\"\r\n", [bits objectForKey:@"filename3"]] dataUsingEncoding:NSUTF8StringEncoding]];
  [postbody appendData:[@"Content-Type: application/octet-stream\r\n\r\n" dataUsingEncoding:NSUTF8StringEncoding]];

  NSLog(@"file2 %@",file2);  // i am able to print data here

  [postbody appendData:[NSData dataWithData:file2]];



  [postbody appendData:[[NSString stringWithFormat:@"\r\n--%@--\r\n",boundary] dataUsingEncoding:NSUTF8StringEncoding]];


   [request setHTTPBody:postbody];


  conn = [[NSURLConnection alloc] initWithRequest:request delegate:self];
    if (conn) {
    webData = [NSMutableData data];
   }


  }
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-01-10 10:54:28

嘿,Nithin,按照你的代码,你做了所有的事情都很好。

在当前情况下,只有第一个文件正在服务器上上载。我认为如果你不上传第一个文件和上传第二个文件,它将被上传。

所以我建议你可以用这个数组。如果您的web服务使用php/..net,那么您可以使用数组作为文件名。

所以试着使用

name=\"image2[]\";name=\"image3[]\";

此外,请检查您的web服务与此。

谢谢。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14256023

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档