如何在multipart http post请求中发布图像数组

我想上传图像数组,我应该如何将array附加到NSMutableData 。 这是我的代码

 func createBodyWithParametersMulti(parameters: [String: String]?, filePathKey: String?, imageDataKey: [NSData?], boundary: String) -> NSData { let body = NSMutableData(); if parameters != nil { for (key, value) in parameters! { body.appendString("--\(boundary)\r\n") body.appendString("Content-Disposition: form-data; name=\"\(key)\"\r\n\r\n") body.appendString("\(value)\r\n") } } if(imageDataKey.count != 0){ let filename=filePathKey as! String // let mimetype = "image/jpeg" body.appendString("--\(boundary)\r\n") body.appendString("Content-Disposition: form-data; name=\"\(filename)\"; filename=\"image.jpg\"\r\n") // body.appendString("Content-Disposition: form-data; name=\"image\"; filename=\"image.jpg\"\r\n") body.appendString("Content-Type: \("image.jpeg")\r\n\r\n") body.append(imageDataKey[0]! as Data) body.appendString("\r\n") } else { } body.appendString("--\(boundary)--\r\n") return body } 

ImageDataKey是包含多个图像作为NSDataarray的名称。

尝试这个

 func createBodyWithParametersAndImages(parameters: [String: Any]?, filePathKey: [String], imageDataKey: [Data], boundary: String) -> NSData { let body = NSMutableData(); if parameters != nil { for (key, value) in parameters! { body.appendString(string: "--\(boundary)\r\n") body.appendString(string: "Content-Disposition: form-data; name=\"\(key)\"\r\n\r\n") body.appendString(string: "\(value)\r\n") } } for index in 0.. 

方法调用

 let body = createBodyWithParametersAndImages(parameters: parameter, filePathKey: ["profile_image", "cover_image"], imageDataKey: [imageData1, ImageData2] as! [NSData], boundary: boundary) as Data request.httpBody = body