上传多个图像

问题描述:

它是我第一次上传图片 的阵列我使用Alamofire和上传成功 ,但我发现它重复第一图像上传多个图像

let selectedImages = NSMutableArray.init() 
    for img in Photos {     // photos = [UIImage]() 
     selectedImages.add(UIImageJPEGRepresentation(img, 0.1)!) 
    } 
    var s:String = mainTitleTextfield.text! 
    if s == "" || s == " " { 
     let f = DateFormatter() 
     f.dateFormat = "MMM d, yyyy" 
     let date = Date() 
     s = f.string(from: date) 
    } 
    s = s.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed)! 
    let url = serverURL + "postPhotosToClasses/?AlbumName=" + s + "&IsGroup=\(false)" 
    HUD.show(.label("uploading")) 
    Alamofire.upload(multipartFormData: { multipartFormData in 

     for i in 0..<selectedImages.count { 
      multipartFormData.append(selectedImages[i] as! Data, withName: "file",fileName: "image.jpg", mimeType: "image/jpeg") 
     } 
     multipartFormData.append(selectedImages[1] as! Data, withName: "file",fileName: "image.jpg", mimeType: "image/jpeg") 
     _ = 3 

    }, to: url,method:.post, 
     headers:["UserID":"\(currentTeacher.ID)","Ids":arr], encodingCompletion: { encodingResult in 
     switch encodingResult { 
     case .success(let upload, _, _): 
      upload 
       .validate() 
       .responseJSON { response in 
        switch response.result { 
        case .success(let value): 
         print("responseObject: \(value)") 
         HUD.flash(.success, delay: 1.0) 
        case .failure(let responseError): 
         print("responseError: \(responseError)") 

        } 
      } 
     case .failure(let encodingError): 
      print("encodingError: \(encodingError)") 

     } 
    }); 

} 

可能是使用问题的循环中multipartFormData

+0

什么是'multipartFormData.append ...'_after_ for循环? – shallowThought

+0

我添加这段代码来测试foor循环中的问题 但它遇到同样的问题并上传selectedimage [0] –

问题追加在withName 当变化withName:"file"更换

for i in 0..<selectedImages.count { 
    multipartFormData.append(selectedImages[i] as! Data, withName: "file",fileName: "image.jpg", mimeType: "image/jpeg") 
    } 

这一行 到withName:"file\(i)"

for i in 0..<selectedImages.count { 
    multipartFormData.append(selectedImages[i] as! Data, withName: "file\(i)",fileName: "image.jpg", mimeType: "image/jpeg") 
    }