0

现在我正在使用 Alamofire 将我的 iOS 应用程序通过 api 连接到服务器。

我们的服务器人员发出了上传图片和一些信息的发布请求。

并且这些数据使用 POST 方法和多部分发送到服务器。

    private let files = UIImage(named: "testImg")!.pngData()!
    private let payload : [String : [String : String]] = [
        "postInfo" : [
            "title" : "iOS Test",
            "price" : "1000",
            "description" : "iOS Test",
            "category" : "iOS Test",
            "camps" : "[1,2]"
        ]
    ]

这是我的参数。和,

func upload() {
        AF.upload(multipartFormData: { [weak self] (multipartFormData) in
            guard let self = self else { return }
            // image
            multipartFormData.append(self.files, withName: "files", fileName : "testImg.png", mimeType: "image/png")
            
            // postInfo <- **this part I have in trouble**
            for (key, value) in self.payload {
                multipartFormData.append("\(value)".data(using: .utf8)!, withName: key, mimeType: "application/json")
            }
         

...             
          

我认为嵌套参数“postInfo”不能很好地发送到 api。

那么如何使用多部分表单数据发送这个嵌套的 json 参数“postInfo”?

4

0 回答 0