【问题标题】:Alamofire 4.0 / Swift 3.0 - Appending multipart form data (CSV file)Alamofire 4.0 / Swift 3.0 - 附加多部分表单数据(CSV 文件)
【发布时间】:2016-10-20 00:22:24
【问题描述】:

我之前有一个在 Swift 2.2 中工作的 .post 多格式上传,它遵循以下格式(请注意,我没有包括所有的 AlamoFire 代码......那太长了。我只是包括相关的部分):

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 中我不能再发布具有“text/csv”mimetype 的 NSData....但我不完全确定。

任何帮助都会很棒。谢谢!

【问题讨论】:

    标签: post swift3 alamofire


    【解决方案1】:

    试试

    multipartFormData.append(csvDataArray[0] as Data, withName: "bulk", fileName: "multi-input.csv", mimeType: "text/csv")

    【讨论】:

      猜你喜欢
      • 2018-12-18
      • 2017-09-21
      • 1970-01-01
      • 1970-01-01
      • 2021-11-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-01-28
      相关资源
      最近更新 更多