首页 > 解决方案 > 我如何请求参数 Alamofire 表单数据?

问题描述

我正在实施会员注册。我使用 alamofire,我必须发送表单数据。我搜索“alamofrie 表单数据”我成功了代码,但在服务器上没有上传。我怎么办。?

func post(_ api: NetworkingAPI) -> DataRequest {
    print(baseURI + api.path)
    print(api.parameters)
    print(api.headers)
    
    return AF.upload(multipartFormData: { (multipartFormData) in
        for (key, value) in api.parameters {
            multipartFormData.append("\(value)".data(using: String.Encoding.utf8)!, withName: key as String)
        }
    }, to: baseURI + api.path, method: .post, headers: api.headers).response { resp in
        switch resp.result {
        case .failure(let error):
            print(error)
        case .success(_):
            print("success!!")
        }
    }
}

参数是这样的。[“密码”:“”,“电子邮件”:“”,“姓名”:“”]

哦,这个状态码是 500...

标签: iosswiftrequestalamofire

解决方案


500 表示“内部服务器错误” - 您的服务器端无法正确接受您发送的内容。

您可以使用此重载发送数据:

Alamofire.request(api_url, method: .post, parameters: params, encoding: encoding, headers: headers) 

其中params是字典:typealias Parameters = [String : Any]


推荐阅读