fun UploadRequest()
{
if (photoArray.count > 0)
{
for var i=0 ; i < photoArray.count; i++
{
print(photoArray)
let image = (photoArray[i] as? UIImage)!
let imageData = UIImagePNGRepresentation(image)
if imageData != nil{
let request = NSMutableURLRequest(URL: NSURL(string:"MY_URL")!)
_ = NSURLSession.sharedSession()
request.HTTPMethod = "POST"
let boundary = NSString(format: "---------------------------14737809831466499882746641449")
let contentType = NSString(format: "multipart/form-data; boundary=%@",boundary)
request.addValue(contentType as String, forHTTPHeaderField: "Content-Type")
let body = NSMutableData()
body.appendData(NSString(format: "\r\n--%@\r\n", boundary).dataUsingEncoding(NSUTF8StringEncoding)!)
body.appendData(NSString(format:"Content-Disposition: form-data; name=\"profile_photo\"; filename=\"(Image_Name)\"\\r\n").dataUsingEncoding(NSUTF8StringEncoding)!)
body.appendData(NSString(format: "Content-Type: application/octet-stream\r\n\r\n").dataUsingEncoding(NSUTF8StringEncoding)!)
body.appendData(imageData!)
body.appendData(NSString(format: "\r\n--%@\r\n", boundary).dataUsingEncoding(NSUTF8StringEncoding)!)
request.HTTPBody = body
do {
let returnData = try NSURLConnection.sendSynchronousRequest(request, returningResponse: nil)
let returnString = NSString(data: returnData, encoding: NSUTF8StringEncoding)
print("returnString \(returnString)")
}
catch let error as NSError {
print(error.localizedDescription)
}
}
task.resume()
}
}
}
我使用了这段代码,但它不起作用。给我文件位置空。 在这里,我选择图像并存储在数组中,然后我从数组上传图像。 我在发送图像的地方使用 .php url。
最佳答案
您可以使用 Alamofire 仅使用 URL 将图像上传到服务器
let imageData = UIPNGRepresentation(image)!
Alamofire.upload(imageData, to: "https://httpbin.org/post").responseJSON { response in
debugPrint(response)
}
随时提出修改建议以使其变得更好。
关于ios - 如何使用 Swift 将多张图片上传到服务器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40403396/