我正在嘗試在服務器上進行視頻上傳。我正在使用Alamofire。我越來越接近解決方案,但...我有一個多部分數據表單方法,其中包括這樣的參數「param1」:「test」,「param2」:[「1」,「2」],param3:{「考 「:」 123「}Alamofire - 多部分表單數據鍵值:
參數1仍處功能Alamofire.upload:
multipartFormData.appendBodyPart (date "test" .dataUsingEncoding (NSUTF8StringEncoding, allowLossyConversion: false) !, name: "param1")
如何添加參數2和參數3?
有我的方法:
Alamofire.upload(
.POST,
url,
headers: headers,
multipartFormData: { multipartFormData in
multipartFormData.appendBodyPart(data: "test".dataUsingEncoding(NSUTF8StringEncoding, allowLossyConversion: false)!, name :"param1")
//it is only visualization what I want to do. I know that it isn't working.
//multipartFormData.appendBodyPart(data: ["1", "2"].dataUsingEncoding(NSUTF8StringEncoding, allowLossyConversion: false)!, name :"param2")
//multipartFormData.appendBodyPart(data: {"test": "123 "}.dataUsingEncoding(NSUTF8StringEncoding, allowLossyConversion: false)!, name :"param3")
let fileURL = DataManager().getFileDirectionForFile("movie.mp4")
multipartFormData.appendBodyPart(fileURL: fileURL, name: "file")
},
encodingCompletion: { encodingResult in
switch encodingResult {
case .Success(let upload, _, _):
upload.responseString { response in
debugPrint(response)
}
case .Failure(let encodingError):
print(encodingError)
}
}
謝謝。很容易解決:)。 – Dzeremix
你的歡迎:)如果你喜歡它,請接受應答@Dzeremix –
搞笑的是你祈禱這麼多已經接受** **錯誤答案。是的,你的代碼將被編譯,但是由於'Array' /'NSArray'和'Dictionary' /'NSDictionary'不能響應選擇器'dataUsingEncoding',所以會導致運行時崩潰。你的代碼沒有編譯錯誤,因爲你的字典中的「AnyObject」與Obj-C中的「id」相同,並且可以嘗試調用任何Obj-C選擇器,實際上是否存在。 –