0
如何從Firebase服務器(或任何其他服務器)獲取與設備中設置的時間無關的當前UTC時間?目前正在開發使用Firebase和Swift 4的iOS應用程序。如何從Firebase服務器獲取當前UTC時間
謝謝!
如何從Firebase服務器(或任何其他服務器)獲取與設備中設置的時間無關的當前UTC時間?目前正在開發使用Firebase和Swift 4的iOS應用程序。如何從Firebase服務器獲取當前UTC時間
謝謝!
如果你真的想從服務器獲取當前時間,你可以做這樣的: (我使用的是谷歌的服務器)
override func viewDidLoad() {
super.viewDidLoad()
//call ServerTimeReturn function
serverTimeReturn { (getResDate) -> Void in
let dFormatter = DateFormatter()
dFormatter.dateStyle = .long
dFormatter.timeStyle = .long
dFormatter.timeZone = TimeZone(abbreviation: "UTC")
let dateGet = dFormatter.string(from: getResDate!)
print("Formatted Time : \(dateGet)")
}
}
func serverTimeReturn(completionHandler:@escaping (_ getResDate: Date?) -> Void){
let url = URL(string: "http://www.google.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 {
let dFormatter = DateFormatter()
dFormatter.dateFormat = "EEE, dd MMM yyyy HH:mm:ss z"
let serverTime = dFormatter.date(from: contentType)
completionHandler(serverTime)
}
}
task.resume()
}