Search code examples
iosswift3alamofire

Alamofire: send parameter


I want to post data as parameter like this:

{ 
    "data":
    [
        {
            "nik" : "lalaal"
        }
    ]
}

How do I write to these parameters in Swift 3 using Alamofire?

i tried :

let parameter: Parameters = [
                "data":[[
                    "nik" : self.nik,
                    "check_type" : "IN",
                    "tanggal" : "01-08-2017 18:22:00",
                    "long" : String(locationList[projectChoosen].long!),
                    "lat" : String(locationList[projectChoosen].lat!),
                    "id_loc" : locationList[projectChoosen].id_project,
                    "id_project" : nil,
                    "nama_project" : locationList[projectChoosen].nama_project,
                    "barcode" : "",
                    "foto": "",
                    "mime_type" : "image/jpeg"

                    ]]
            ]

Solution

  • You can use below code.

    let dicRequest: NSDictionary = ["userid" : "test", "password" : "test123"]
    
    let postParams:NSDictionary = [
        "data": dicRequest
    ]
    let requestURL: String = String(format: "%@/Login", serverURL)
    Alamofire.request(requestURL, method: .post, parameters: postParams as? [String : AnyObject], encoding: JSONEncoding.default, headers: [:])
        .responseJSON { response in switch response.result {
    
        case .success(let JSON):
            print("response :-----> ",response)
        case .failure(let error):
            print("Request failed with error: \(error)")
    
            }
    }