Мое приложение требует, чтобы пользователь был в сети, и я пытаюсь узнать время на сервере, даже если пользователь меняет свою дату.Я нашел этот код, и он работает только при первом запуске приложения.Затем в следующий раз он зависает, и я должен изменить веб-сайт.Каждый раз, когда я меняю веб-сайт, сразу же после этого я получаю дату и время.
Код:
func getTimeFromServer(completionHandler:@escaping (_ getResDate: Date?) -> Void){
let url = URL(string: "https://www.apple.com")
let task = URLSession.shared.dataTask(with: url!) {(data, response, error) in
let httpResponse = response as? HTTPURLResponse
if let contentType = httpResponse!.allHeaderFields["Date"] as? String {
//print(httpResponse)
let dFormatter = DateFormatter()
dFormatter.dateFormat = "EEE, dd MMM yyyy HH:mm:ss z"
let serverTime = dFormatter.date(from: contentType)
completionHandler(serverTime)
}
}
task.resume()
}