2016-07-08 14 views
0

画像データを含む配列の形で複数の写真をサーバーにアップロードする方法を教えてもらえますか?ios objective-cアレイに複数の写真をアップロードする

私はいくつかの調査を行いました。私は 'multipart/form-data'を使用しましたが、イメージの配列にする方法を混乱させています。

私が望むのは、画像[画像1、画像2、画像3]がサーバー側です。

ここまでは私がこれまで行ったことです。

if (attachImages.count != 0) { 

    for(int count = 0; count < attachImages.count; count++){ 

     NSLog(@"Body Image count: %d", count); 
     UIImage *image = [attachImages objectAtIndex:count]; 
     NSData *imageData = UIImageJPEGRepresentation(image, 1); 

     [body appendData:[[NSString stringWithFormat:@"--%@\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]]; 
     [body appendData:[[NSString stringWithFormat:@"Content-Disposition: form-data; name=%@; filename=picture.jpg\r\n", @"pictures[]"] dataUsingEncoding:NSUTF8StringEncoding]]; 
     [body appendData:[@"Content-Type: image/jpeg\r\n\r\n" dataUsingEncoding:NSUTF8StringEncoding]]; 
     [body appendData: imageData]; 
    } 
    //[body appendData:[[NSString stringWithFormat:@"\r\n"] dataUsingEncoding:NSUTF8StringEncoding]]; 
} 

// close form 
[body appendData:[[NSString stringWithFormat:@"--%@--\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]]; 

おかげ

+0

参照: - http://stackoverflow.com/a/31651798/1275530 – Tarun

答えて

0

だから、良いアイデアがあなたのサーバーにデータをアップロードするよりも、そう

NSData *imageDAta = UIImagePNGRepresentation(image); 
NSString *imageString = [NSString stringWithFormat:@"data:image/png;base64,%@",[imageDAta base64EncodedStringWithOptions:0]]; 

のようなデータURIに画像をオンにするだろう、これは最速の方法となり、したがって、マルチパートアップロードは必要ありません。イメージがサーバーに当たったとき、URIをデータに変換するだけで、使用する言語によっていくつかのパッケージがある可能性があります。

関連する問題