Alamofire发送对象作为参数

时间:2016-03-23 10:30:08

标签: swift swift2 alamofire

我很难做一些简单的事情。我想发送的数据如下:

  {
    "nickname":"Rado",
    "social": {
      "data: { 
        "accesstoken":"xx",
        "applicationId":"xx",
        "userId":"xx"
      },
      "type":"whatever"
    }
  }

目前我正在这样做:

           let params = [
                "nickname": userName,
                "social": [
                    "type": "whatever",
                    "data": [
                        "userId": accessToken.userID,
                        "accesstoken": accessToken.tokenString,
                        "applicationId": accessToken.appID
                    ]
                ]
            ]

 Alamofire.request(.POST, "url/users", parameters: params, headers: nil)
                .responseJSON { response in

}

作为回应我得到了这个:

{
 "nickname":"Rado",
 "social[data][userId]":"xx",
 "social[data][applicationId]":"xx",
 "social[data][accesstoken]":"xx",
 "social[type]":"something"
}

任何建议将不胜感激!

1 个答案:

答案 0 :(得分:3)

解决方案结果非常简单。我错过了编码:.JSON

    Alamofire.request(.POST, "url/users", parameters: params, headers: nil, encoding: .JSON)
        .responseJSON { response in

    }