使用日期 - iOS - Firebase

时间:2016-03-03 15:14:35

标签: ios swift date firebase

我想知道使用Firebase后端在IOS中使用日期的最佳方式是什么。

在我的应用程序中,我有事件,用户可以在特定日期时间之前发布数据。如何防止用户修改他的系统日期,以便能够对事件进行更改,而这是不可能的? 我们通常如何在iOS中阻止这些情况? 我现在可以使用Firebase的时间戳了,但每次需要使用日期时请求时间戳有点烦人。

感谢您的帮助,

亨利

2 个答案:

答案 0 :(得分:3)

如果您的客户端时间戳不够/安全的用例,您可以始终使用Firebase的服务器端时间戳机制。

来自documentation

  

Firebase服务器提供了一种机制,可以将服务器上生成的时间戳作为数据插入。此功能与onDisconnect结合使用,可以轻松可靠地记录客户端断开连接的时间:

var userLastOnlineRef = Firebase(url:"https://<YOUR-FIREBASE-APP>.firebaseio.com/users/joe/lastOnline")
userLastOnlineRef.onDisconnectSetValue([".sv": "timestamp"])

您还可以使用now variable in your security rules,以确保时间戳字段与now相同(或至少不在NaN之后。

答案 1 :(得分:0)

如果你太依赖客户端的时钟并且无法通过服务器检查它们,那么你可以实现一个consensus protocol,允许其他客户端在被接受之前验证时间戳/帖子。