Ios 如何使用Alamofire发送表单数据体

Ios 如何使用Alamofire发送表单数据体,ios,swift,alamofire,Ios,Swift,Alamofire,我想向阿拉莫菲尔提出这样的请求: 如您所见,我有一个名为“data”的参数,它的值是Json 我如何使用Alamofire做到这一点 我尝试了参数,但没有成功 Alamofire.request(urlservice, method: .post, parameters: ["data": parameters], encoding: JSONEncoding.default, headers: nil).responseJSON { response in 有什么建议吗 更新 这是我的密码

我想向阿拉莫菲尔提出这样的请求:

如您所见,我有一个名为“data”的参数,它的值是Json

我如何使用Alamofire做到这一点

我尝试了参数,但没有成功

Alamofire.request(urlservice, method: .post, parameters: ["data": parameters], encoding: JSONEncoding.default, headers: nil).responseJSON { response in
有什么建议吗

更新 这是我的密码

var arrayProducts = [[String: String]]()

    let product: [String: String] = ["qty": self.txtQty.text!, "precio": self.productPrice, "product_id": self.productId]

    arrayProducts.append(product)

    let parameters = [
        "products": arrayProducts,
        "address": self.userInfo["userAddress"]!,
        "latitude": "6.157738",
        "longitude": "-75.6144665",
        "id": 1,
        "name": self.userInfo["userName"]!,
        "cellphone": self.userInfo["userPhone"]!,
        "emei": "23456resdfty"
        ] as [String : Any]

 Alamofire.request(urlservice, method: .post, parameters: ["data": parameters], encoding: JSONEncoding.default, headers: nil).responseJSON { response in

下面是一个示例4,CURL语句是它所做工作的一个示例

注意:这里引用的令牌是一个共享秘密,显然不是要发布到的内容。所以:)这里有一袋打印语句,以便您可以看到发生了什么/错误:)

当您有一个Any Data as参数表时,您应该向Alamofire发送URLRequest,它支持Any as主体


发布您的代码您如何使用阵列设置
参数
“检查此答案@EdisonMejia”
func files_download(sourcePath: String) {

    // curl -X POST https://content.dropboxapi.com/2/files/download
    // --header "Authorization: Bearer ab-XXX"
    // --header "Dropbox-API-Arg: {\"path\": \"/acme101/acme1/acme.png\"}"


    var headers:HTTPHeaders!
    let subPart: Dictionary =  ["path":sourcePath]
    do {
        let data = try JSONSerialization.data(withJSONObject: subPart, options: [])
        let dataString = String(data: data, encoding: .utf8)
        headers = ["Authorization": "Bearer " + token, "Dropbox-API-Arg": dataString!]
    } catch {
        print("Oh fudge")
    }

    Alamofire.request("https://content.dropboxapi.com/2/files/download", method: .post, encoding: JSONEncoding.init(options: []), headers: headers).responseData(completionHandler: {feedback in
        guard feedback.result.value != nil else {
        print("Error: did not receive data", //rint("request \(request) feedback \(feedback)"))
        return
        }
        guard feedback.result.error == nil else {
            print("error calling POST on list_folder")
            print(feedback.result.error)
            return
        }

        if let JSON = feedback.result.value {
            print("JSON: \(JSON)")
            let dataString = String(data: JSON, encoding: .utf8)
            print("JSON: \(JSON) \(String(describing: dataString))")
        }
        if let IMAGE = feedback.result.value {
            print("downloaded \(sourcePath) \(sharedDataAccess.currentSN)")
            sharedDataAccess.fnData(index2seek: sharedDataAccess.currentSN, fnData:  feedback.result.value! as Data)
            NotificationCenter.default.post(name: Notification.Name("previewPane"), object: nil, userInfo: nil)
        }
    })
}
    var request = URLRequest(url: URL(string: url)!)

    request.httpMethod = "POST"
    request.setValue("application/json", forHTTPHeaderField: "Content-Type")

    request.httpBody = try! JSONSerialization.data(withJSONObject: parameters, options: [])

    Alamofire.request(request)
        .responseString { (response) in
            // to do anything
    }