我的同事后端程序员说,他已经配置了一个API,希望从我的移动应用程序接收到类似这样的内容:

[{"id":50},{"id":60}]

我正在使用Alamoire,它接收要发送的参数字典。但我相信这也是使用nsurlsession或任何其他第三方插件的相同机制。
问题是:我应该如何构造字典来发送一个ID数组,比如一个HTTP表单如何拥有多个具有相同ID的文本字段,然后它将作为一个ID数组被接收到服务器端?到目前为止我所做的尝试都失败了:
param.setValue(50, forKey:"id");
param.setValue(60, forKey:"id");
// this only send the last single value

param.setValue([50, 60], forKey:"id");
// this results in error (415 unsupported media type)

param.setValue(50, forKey:"id[0]");
param.setValue(60, forKey:"id[1]");
// this also results in error (415 unsupported media type)

我怎样才能像发送Web表单一样正确地发送它?谢谢。

最佳答案

第一个方法的问题是您覆盖了键的值,这就是为什么它只发送最后一个值的原因。尝试将参数作为数组发送。

let dict = NSMutableArray()
param.setValue(50, forKey:"id")
dict.addObject(param)
param.setValue(60, forKey:"id")
dict.addObject(param)

id作为请求方法的参数传递。

10-08 08:38
查看更多