Swift 2 - POST请求不会添加参数

时间:2015-08-28 21:41:48

标签: json post swift2 alamofire

跟随一个问题,有人问Alamofire github问题从未得到回答,因为我也想要答案。

  

使用GET做一个简单的请求很好地添加了我的参数,但做了一个   POST没有。

request: Optional(<NSMutableURLRequest: 0x7f9864109cb0> { URL: https://api.github.com/repos/BasThomas/junk/issues })
 while

let parameters = ["foo": "bar"]

Alamofire.request(.GET, "url", parameters: parameters)
.responseJSON { request, response, json, error in
  print("request: \(request)")
}
     

返回

request: Optional(<NSMutableURLRequest: 0x7f9ef07ef0f0> { URL: https://api.github.com/repos/BasThomas/junk/issues?foo=bar })
     

返回

{s:someStuff}

1 个答案:

答案 0 :(得分:1)

POST的参数将添加到请求正文,而不是URL。这是由于GET和POST之间的共同约定。

自定义参数编码

如果您需要将它们附加到网址(听起来像你这样做),那么我建议您查看.Custom ParameterEncoding类型。这将允许您遵循与编码方法相同的逻辑,但附加您喜欢的参数。

此外,ParameterEncoding枚举中的方法现已全部公开,因此您可以访问查询参数拆分和转义。