1

So far I have been doing fine using the code below to upload a profile picture data to the server.

Alamofire.upload(.POST,
    URLString: "https://example.com/api/v1/users/profile_pic.json?auth_token=\(auth_token)",
    multipartFormData: { multipartFormData in
        multipartFormData.appendBodyPart(data: imageData, name: "avatar", fileName: "avatar_img.png", mimeType: "image/png")
    },
    encodingCompletion: { encodingResult in

        switch encodingResult {
            case .Success (let upload, _, _):
                upload.responseJSON { request, response, data, error in

                // Do whatever 

                } 
            case .Failure (let encodingError):
        }

    })

But now I also need to upload my user's other details to the server such as first_name and last_name along with it. How should I do that in one request along with the picture data?

JayVDiyk
  • 4,277
  • 22
  • 70
  • 135

1 Answers1

0

This is how you can do that

    Alamofire.upload(.POST, path, headers: self.predefinedHeaders, multipartFormData: { multipartFormData in

                    multipartFormData.appendBodyPart(data: imageData, name: "avatar", fileName: "avatar_img.png", mimeType: "image/png")

                    for (key, value) in parameters
                    {
                            multipartFormData.appendBodyPart(data: value.dataUsingEncoding(NSUTF8StringEncoding)!, name: key)
                    }

                    }, encodingCompletion:{ encodingResult in
                     //your handling
                    })
beretis
  • 899
  • 1
  • 9
  • 24