我的项目中有一个问题: 这是我的网址
www.someapi.com/product/filter?range [柱] =价格&安培;范围[值] [LTE] = 7000&安培;范围[值] [GTE] = 1000&安培;偏移量= 10安培;限制= 10安培; LANG =烯
如您所见,GET
方法参数
但我使用POST
方法,所以帖子正文是
{"category_id":4017,"filter":[{"filter_id":"214","value_ids":["7632","6433"]}],"type":"2"}
那么可以在Alamofire中组合get和post参数吗?我在他们的github中寻找答案,但没有任何结果。
答案 0 :(得分:0)
是的,您可以将查询字符串参数与POST
正文混合使用。
另外,请注意查询参数不是GET
特定的。只要您的API处理它,它就会起作用。
这不是Alamofire问题,而是与您的API设计有关
POST
方法,则无法发送有效内容。 基本上,您的API应设计为处理查询字符串参数并支持POST
方法,以便两者都能正常工作。
用法示例:
let strURL = "www.someapi.com/product/filter?range[column]=price&range[value][lte]=7000&range[value][gte]=1000&offset=10&limit=10&lang=en"
let payload: [String:Any] = ["category_id":4017,
"filter":[["filter_id":"214",
"value_ids":["7632",
"6433"]]],
"type":"2"]
Alamofire.request(strURL,
method: .post,
parameters: payload,
encoding: JSONEncoding.default,
headers: nil)