Неправильные значения для параметров, отправляемых с использованием MultipartFormData - PullRequest
0 голосов
/ 14 февраля 2019

Все, что я делаю, это просто как:

    func postMultipart(_ url: URL, parameters: [String: Any]?, headers: [String: String]?, image: UIImage?, success: @escaping SuccessHandler, failure: @escaping ErrorHandler) {
        manager.upload(multipartFormData: { multipart in
            if let image = image, let data = UIImagePNGRepresentation(image) {
                multipart.append(data, withName: "Passport", fileName: "picture.png", mimeType: "image/png")
            }
            if let parameters = parameters {
                for (key, value) in parameters {
                    multipart.append(self.archiver.data(from: value), withName: key)
                }
            }
        }, to: url, method: .post, headers: headers) { result in
            //parse result here
        }
    }

И это то, что я вижу в результате моей многочастной отправки на сервер:

enter image description here

Вы можете видеть, что это неправильно.Это должно выглядеть так:

PMSReservationID: "23".

Почему это не строка, а какой-то объект архиватора?

1 Ответ

0 голосов
/ 14 февраля 2019

Вам может понадобиться как

for (key, value) in parameters {
   multipartFormData.append((value as AnyObject).data(using: String.Encoding.utf8.rawValue)!, withName: key)
}
...