Search code examples
iosswift3alamofire

Alamofire POST Bad Request


I'm trying to make a post request to my server through Alamofire but it returns a bad request saying that parameters are badly formed. Same requests is working in postman and swagger.

Here is the code:

var params = [
            "username": "[email protected]",
            "password": "test123",
            "pushToken": "No token"
    ]

Alamofire.request("https://thankyouposta.com/api/auth", method: .post, parameters: params, encoding: URLEncoding.default, headers: R.Api.headers).responseJSON { response in
        switch response.result {
        case .success(let value):
            // ...
        case .failure(let error):
            // ...
        }
    }

Update 1

Parameters needs to be sent as form url encoded body

Update 2

Value of R.Api.headers is

["Content-Type" : "application/x-www-form-urlencoded"]

Solution

  • The backend was an IIS server with redirection to Tomcat. I've excluded IIS and make the requests directly to Tomcat and it is working now. As I understood, the problem was in delivering the request from IIS to Tomcat.

    Solved