Xcode : Alamofire get String response

If you want JSON response use .responseJSON , if you want String response use .responseString. If you want both use both. Hope this help.

Alamofire.request(loginUrl, method: .post, parameters: parameters)
     .responseJSON { response in
       print("JSON:\(response.result.value)")
       switch(response.result) {
       case .success(_):
          if let data = response.result.value{
             print(data)
           }
            
        case .failure(_):
            
            print("Error message:\(response.result.error)")
            break
            
        }
    }
     .responseString { response in
       print("String:\(response.result.value)")
       switch(response.result) {
       case .success(_):
          if let data = response.result.value{
             print(data)
            }
                
       case .failure(_):
           print("Error message:\(response.result.error)")
           break     
        }
    }

UPDATED: Swift 5, Alamofire 5

    AF.request(urlString, method: .post, parameters: parameters)
        .responseJSON { response in
            print("response: \(response)")
            switch response.result {
            case .success(let value):
                print("value**: \(value)")
                
            case .failure(let error):
                print(error)
            }
    }
    .responseString { response in
        print("response: \(response)")
        switch response.result {
        case .success(let value):
            print("value**: \(value)")
            
        case .failure(let error):
            print(error)
        }
    }

I resolve this by:

print(response.request)  // original URL request
print(response.response) // URL response
print(response.data)     // server data
print(response.result)   // result of response serialization

source: https://github.com/Alamofire/Alamofire/issues/818