Set timeout in Alamofire
Please Try this:-
let request = NSMutableURLRequest(url: URL(string: "")!) request.httpMethod = "POST" request.setValue("application/json", forHTTPHeaderField: "Content-Type") request.timeoutInterval = 10 // 10 secs let values = ["key": "value"] request.httpBody = try! JSONSerialization.data(withJSONObject: values, options: []) Alamofire.request(request as! URLRequestConvertible).responseJSON { response in // do whatever you want here }
I have same problem too, I think I found the solution. Try to declare SessionManager?
or in your case alamofireManager
in class, outside the function
class ViewController: UIViewController { var alamoFireManager : SessionManager? // this line func alamofire(){ let configuration = URLSessionConfiguration.default configuration.timeoutIntervalForRequest = 10 configuration.timeoutIntervalForResource = 10 alamoFireManager = Alamofire.SessionManager(configuration: configuration) // not in this line alamoFireManager.request("my_url", method: .post, parameters: parameters).responseJSON { response in switch (response.result) { case .success: //Success.... break case .failure(let error): // failure... break } } }}