具有JSON参数的多部分数据Alamofire

时间:2016-06-13 13:10:19

标签: ios json swift alamofire

我正在尝试通过multipartFormData发送上传图片

我想发送这样的内容:

{
    'user': {
        'id': 'toto',
        // …
        picture: // the image data
    }
}

如何使用multipartFormData对象处理此格式?

目前我的代码运行良好,但上面没有JSON格式:

multipartFormData.appendBodyPart(data: dataImage, name: "picture")
if let parameters = parameters {
     for (key, value) in parameters {
                    multipartFormData.appendBodyPart(data: value.dataUsingEncoding(NSUTF8StringEncoding, allowLossyConversion: false)!, name :key)
                }
      }
}

提前感谢您的帮助

1 个答案:

答案 0 :(得分:1)

if let _image = image {
    if let imageData = UIImageJPEGRepresentation(_image, 0.5) {
        multipartFormData.appendBodyPart(data: imageData, name: imageName, fileName: "avatar.png", mimeType: "image/png")
    }
}

if let parameters = parameters {
    for (key, value) in parameters {
        multipartFormData.appendBodyPart(data: value.dataUsingEncoding(NSUTF8StringEncoding)!, name: key)
     }
}

但参数必须如下:

let parameters:[String: AnyObject] = [
        "user[id]":1
]

图片名称应为user[picture]

这对我有用