Swift 如何使用alamofire';s多部分表单数据
如何将此参数发送到多部分Swift 如何使用alamofire';s多部分表单数据,swift,multidimensional-array,alamofire,multipartform-data,Swift,Multidimensional Array,Alamofire,Multipartform Data,如何将此参数发送到多部分 let dictionary = [ "user" : [ "email" : "\(email!)", "token" : "\(loginToken!)" ], "photo_data" :[ "name" : "Toko Tokoan1", "avatar_photo" :
let dictionary = [
"user" :
[
"email" : "\(email!)",
"token" : "\(loginToken!)"
],
"photo_data" :[
"name" : "Toko Tokoan1",
"avatar_photo" : photo,
"background_photo" : photo,
"phone" : "0222222222",
"addresses" :[[
"address" : "Jalan Kita",
"provinceid" : 13,
"cityid" : 185,
"postal" : "45512"
]],
"banks" :[[
"bank_name" : "PT Bank BCA",
"account_number" : "292993122",
"account_name" : "Tukiyeum"
]]
]
]
我尝试了下面的代码,但无法将值(在NSDic中)编码为UTF8
无法使用附加正文部分中的
值,因为它不是字符串。如何正确地将该参数放入multipartformdata中?允许嵌套多部分
明确允许在另一个多部分实体的主体部分中使用多部分的内容类型。在这种情况下,出于明显的原因,必须注意确保每个嵌套的多部分实体必须使用不同的边界分隔符
因此,您必须执行与外部循环相同的操作:简单地循环字典的内容,生成键值对。显然,您必须设置不同的零件分隔符,以便客户机能够区分嵌套零件更改和顶级零件更改
可能更容易将整个结构作为application/json发送。可能更容易将整个结构作为application/json发送。
是。
for (key, value) in current_user {
if key == "avatar_photo" || key == "background_photo"{
multipartFormData.appendBodyPart(fileURL: value.data(using: String.Encoding.utf8)!, name: key) // value error because its NSDic
}else{
multipartFormData.appendBodyPart(data: value.data(using: String.Encoding.utf8)!, name: value) // value error because its NSDic
}
}