如何使用参数 swift 3.0 Alamofire 4.0 调用邮政服务? [英] How to call post service with parameters swift 3.0 Alamofire 4.0?

查看:18
本文介绍了如何使用参数 swift 3.0 Alamofire 4.0 调用邮政服务?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有参数

var Param : [String:String] = [:]

我正在使用

Alamofire.upload(
        multipartFormData: { multipartFormData in

但作为回应,它说invalid service他们的参数编码出错了吗?

but in response it says invalid service is their in parameter encoding it goes wrong ?

推荐答案

multipartFormData 用于上传图片到服务器.因此,如果您想上传图像数据,请尝试使用以下代码.

multipartFormData is used to upload images on server. So if you want to upload image data then try to use below code.

let payload: [String: AnyObject] = [
"key1": "val1" as AnyObject,
"key2": true as AnyObject,
"key3" : [1,2,3,4] as AnyObject
]

let requestString = "http://www.url.com/api/action"

Alamofire.upload(multipartFormData: { (multipartFormData) in
    multipartFormData.append(UIImageJPEGRepresentation(self.photoImageView.image!, 0.5)!, withName: "photo_path", fileName: "swift_file.jpeg", mimeType: "image/jpeg")
    for (key, value) in payload {
        multipartFormData.append(value.data(using: String.Encoding.utf8)!, withName: key)
    }
    }, to: requestString, method: .post , headers:nil, encodingCompletion: { (result) in
    switch result {
    case .success(let upload, _, _):

        upload.uploadProgress(closure: { (progress) in
            print(progress.fractionCompleted * 100)
        })

        upload.responseJSON(completionHandler: { (response) in
        })
    case .failure(let error):
        print(error)

    }
})

如果您想调用发布请求,请尝试使用以下代码:

If you want to call the post request then try to use below code:

 let urlString = "https://httpbin.org/get"

Alamofire.request(urlString, method: .post, parameters: ["foo": "bar"],encoding: JSONEncoding.default, headers: nil).responseJSON {  
response in
  switch response.result {
                case .success:
                    print(response)

                    break
                case .failure(let error):

                    print(error)
                }
}

这篇关于如何使用参数 swift 3.0 Alamofire 4.0 调用邮政服务?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆