如何为 alamofire POST 请求定义嵌套字典

how to define nested dictionary for alamofire POST request

您好,我有一个嵌套字典,我需要将其传递给函数以使用 alamofire 发出 POST 请求。

这是执行 API 调用的函数

func apiCall(productParameter: [String:String]) {

     AF.request(dataURL, method: .post, parameters: parameters, encoding: JSONEncoding.default, headers: headers).responseJSON { response in
            debugPrint(response)
            //some other code here.
        }


}

在我的viewController中,我需要调用这个函数:

apiCall(productParameter: [String:String])

问题是我要传递一个非常复杂的嵌套字典...像这样:

{
  "userId": "string",
  "price": {
    "currency": "USD",
    "amount": 99.96
  },
  "paymentModel": "string",
  "description": "string",
  "product": [
    {
      "description": "string",
      "name": "string",
      "images": [
        "string"
      ]
    }
  ]
}


你知道怎么定义函数和数据类型吗?谢谢。

在这种情况下你应该尝试 [String : Any],这样你的键总是 Strings 但值可以是 Strings, Dictionarys, Arrays等等。