我需要续订要发送给数据库的用户 token ,以验证和处理来自应用程序的请求。

为了安全起见,用户 token 每个月都会过期,因此我必须调用每20天或25天进行一次续订的函数来续签 token 。

我曾考虑过使用NSTimer,但是当应用程序关闭时它停止了,所以不是解决方案。

你知道我该怎么做吗?

最佳答案

像这样做

// Get current date
let date = NSDate()
// Add 20 days to it
let tokenDaysAdded: NSDate = date.dateByAddingTimeInterval(Double(60 * 60 * 24 * 20)) as! NSDate
// Save it to your NSUserDefaults
let defaults = NSUserDefaults.standardUserDefaults()
defaults.setValue(tokenDaysAdded, forKey: "token")

// Get the token date
let tokenDate = defaults.objectForKey("token")!
// Get current date
let now: NSDate = NSDate()

// Check if tokenDaysAdded is earler than today, then you´re ok
if tokenDaysAdded.earlierDate(now) == tokenDate as! NSObject {
    // you´re ok
}
// Else you need to update the token since tokenDaysAdded is greater than todays date
else {
    // tokenDaysAdded is earlier
    // Send notifcation about updating the token
}

07-24 09:37