【问题标题】:How can post form raw data as parameters in Alamofire request? [duplicate]如何在 Alamofire 请求中将表单原始数据作为参数发布? [复制]
【发布时间】:2020-01-15 05:43:21
【问题描述】:

如何使用带有原始 json 数据请求正文的 alamofire 快速发出 post 请求。以下是原始数据。

{"KeyValue": "{CustomerID':9,Password':test}"}

【问题讨论】:

  • 添加你目前尝试过的代码。

标签: ios json swift alamofire


【解决方案1】:

在我的项目中,我发布了JSON raw data,如下所示

let userId: String = "jakir"
let userPassword: String = "jakir123"

let js = "{\"userId\":\"\(userId)\",\"userPassword\":\"\(userPassword)\"}"
let parameters: Parameters = ["jsonRequest": "\(js)"]

Alamofire.request("https://abcd.com/login", method: .post, parameters: getParameters(json: js),headers: ApiEndPoint.ProductionServer.headers)
            .responseJSON { response in
                proccessedResponse(response: response){ json in
                     completion(json)
                }
          }

注意:我使用了Alamofire ~> 4.7

【讨论】:

    【解决方案2】:
          Alamofire.request( url, method: .post , parameters: parameters, encoding:  JSONEncoding.default ,headers:nil).responseJSON{
                response in
    
                switch response.result {
                case .success:
                       // your code of putting data in form of NSDictionary
                        self.stopProgress()
    
                    }else{
                           self.stopProgress()
    
                    }
                case .failure(let error):
                    print(error)
                       self.stopProgress()
                }
            }
    
    // put url in place of url above in parameter.
    // progress in SVHUDProgress it's a pod
    // you can also use SwiftyJson with it, it would be more helpful for parsing 
    

    【讨论】:

      最近更新 更多