У меня ранее была мультиформатная загрузка .post, работающая в Swift 2.2, которая следовала следующему формату (обратите внимание, что я не включаю весь код AlamoFire .. .Это будет слишком длинным. Я просто включаю соответствующие части):Alamofire 4.0/Swift 3.0 - Добавление многостраничных данных формы (CSV-файл)
let data = mailStringArray[i].dataUsingEncoding(NSUTF8StringEncoding, allowLossyConversion: false)
csvDataArray.append(data!)
self.alamoFireManager.upload(.POST, "INSERT URL HERE", headers: header, multipartFormData: { multipartFormData in
multipartFormData.appendBodyPart(data: csvDataArray[0], name: "bulk", fileName: "multi-input.csv", mimeType: "text/csv")
Это сработало отлично. Тем не менее, после перехода на Swift 3.0 и Alamofire 4.0, я сейчас, используя следующий формат:
let data = String(mailStringArray[i]).data(using: String.Encoding.utf8, allowLossyConversion: false)
csvDataArray.append(data! as NSData)
self.alamoFireManager.upload(multipartFormData:{ multipartFormData in
multipartFormData.append(csvDataArray[0], withName: "bulk", fileName: "multi-input.csv", mimeType: "text/csv")
usingThreshold:UInt64.init(),
to:"INSERT URL HERE",
method:.post,
headers:["Authorization": "INSERT TOKEN HERE"],
encodingCompletion: { encodingResult in
я в конечном итоге получаю следующее сообщение об ошибке: не может ссылаться на аргумент присоединять со списком аргументов типа «(NSData, withName: String, fileName: String, mimeType: String) '
Я так думаю, потому что в Swift 3.0 я больше не могу публиковать NSData с типом «text/csv» .... но я не совсем уверен.
Любая помощь будет отличной. Благодаря!
Благодаря ! Это сделал трюк. – riceman89