В нашем проекте мы используем сетевой менеджер для обработки всех запросов и ответов с помощью Alamofire. В alamofire мы используем тайм-аут по умолчанию как внутренний, равный 30. Но нам нужно изменить «timeoutIntervalForRequest» для некоторого запроса, например, 50,60 и c.
private var manager : SessionManager?
func sessionManager() -> SessionManager {
if let manage = self.manager {
return manage
}
else {
let configuration = URLSessionConfiguration.default
configuration.timeoutIntervalForRequest = 30
self.manager = SessionManager(configuration: configuration, delegate: CustomSessionDelegate())
return self.manager!
}
}
Я добавил param timeinterval и установил значение по умолчанию в нем.
func sessionManager(timeoutInterval:Double = 30) -> SessionManager {
//passed the param
configuration.timeoutIntervalForRequest = timeoutInterval
}
Но значение временного интервала не обновляется. Мой вопрос заключается в том, как обновить интервал ожидания для SessionManager для каждого запроса с помощью этой функции. Мы можем добиться этого, используя интервал времени ожидания для каждого API, но я хочу, чтобы он превышал общую функцию.