我正在开发一个将字符串发布到服务器的示例应用程序。我想让用户在上一篇文章后仅发布两分钟。我可以在服务器端执行此操作,但是当用户连接速度较慢时,可能需要很长时间才能从服务器获得响应。所以,我打算在客户端(iPhone)上这样做。我只想比较当前和上一篇文章之间的时间。任何人都可以帮我节省上一篇文章的时间。很抱歉,如果有人发现这个问题很愚蠢。
答案 0 :(得分:1)
这需要从架构的角度重新考虑。
如果用户发布,那么您可以计算时间...但是如果用户将尝试发布,则响应失败,那么您需要重置时间。所以这就像你担心来自服务器的响应可能需要很长时间。
假设一切顺利,那么:
您需要知道帖子何时成功发布。然后你需要得到响应,并节省时间,我可以用户默认或plist。
答案 1 :(得分:1)
这应该有所帮助: -
NSUserDefaults* defaults = [NSUserDefaults standardUserDefaults];
NSTimeInterval currentTime = [[NSDate date] timeIntervalSince1970];
NSString* timeStr = [NSString stringWithFormat:@"%f", currentTime];
float recentPostTime = [[defaults objectForKey:@"Recent_Post_Time"] floatValue];
if(currentTime-recentPostTime > 120.0f)
{
//Post to server here..
//Update Recent Post Time in user defaults
[defaults setObject:timeStr forKey:@"Recent_Post_Time"];
[defaults synchronize];
}
else
{
//Alert the user that he/she can't post within 2 minutes again
}