我想從我的iPad到我的網站,這兩者都是本地的差異。每件事情都可以正常工作,直到我看到下面這行,這應該是iPad的時間,並從中減去serverTime。演員從(NSDate) - > NSTimeInterval到無關類型'NSTimeInterval總是失敗
self.serverTimeOffSet = NSDate.timeIntervalSinceDate(serverTime) as NSTimeInterval
我得到 「從(NSDate的)演員 - > NSTimeInterval到不相關類型的「NSTimeInterval總是失敗」 的警告,並self.serverTimeOffset永遠不會設置。
var serverTimeOffSet: NSTimeInterval = 0.0
func setServerOffset(){
var currentTime = NSDate.timeIntervalSinceReferenceDate()
var url = NSURL(string: "http://someurl.com/time")
var request = NSMutableURLRequest(URL:url!)
var response: NSURLResponse?
var error: NSError?
request.HTTPMethod = "get"
request.setValue("application/json", forHTTPHeaderField: "Content-Type")
NSURLConnection.sendAsynchronousRequest(request, queue: NSOperationQueue.mainQueue(), completionHandler: {(response:NSURLResponse!, data:NSData!, error:NSError!) -> Void in
if (error == nil) {
var dateString = NSString(data: data, encoding: NSUTF8StringEncoding) as! String
let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "YYYY-MM-dd'T'HH:mm:ss"
dateFormatter.locale = NSLocale(localeIdentifier: "en_US_POSIX")
if let serverTime = dateFormatter.dateFromString(dateString){
self.serverTimeOffSet = NSDate.timeIntervalSinceDate(serverTime) as NSTimeInterval
}
}
})
}
感謝
編輯 - 從現場返回的日期:
2015-09-15T00:01:44.8530546-06:00
使通過'JSON'返回和'DateFormatter'(「YYYY-MM-dd'T'HH設置確定日期格式:毫米:ss「)相同,否則無法轉換爲日期。 –
我在「self.serverTimeOffSet = NSDate.timeIntervalSinceDate(serverTime)」行上放置了一個斷點作爲NSTimeInterval「,serverTime是一個有效的日期。 –
@BryanH你可以顯示你的日期字符串樣本 –