我有一个web应用程序,我设置提醒未来的日期和时间,当时间到来时,它应该通知用户。我这样做没有什么问题我已经在oracle数据库中存储了日期时间,我希望我的应用程序继续查看它,并在满足时间时触发通知。在数据库中存储日期时间是正确的方法吗?还是有其他方法可以轻易触发?我不完全同意会话/本地存储。谁来指点我一下。
如果您的其他用户数据与它一起存储,那么在oracle数据库中保留通知是可以的。你有一个不错的验证方法。
使用localStorage可以在某些情况下是好的,但可能有点挑战:(用户使用其他浏览器,已经激活了某种网络安全,自动删除localStorage)
Cookies是另一个可变的客户端解决方案,但它也有一些与localStorage相同的问题。
sessionStorage不是这样的:sessionStorage只有在选项卡打开时才会保持活动
保持通知服务器端,有额外的好处,你可以发送其他类型的通知(短信,推送或邮件)
从oracle拉通知可能看起来像这样:select * from notifications where user_id = :user_id and notify_date between trunc(sysdate) and trunc(sysdate+1)
如果你想在JS中处理日期,并将它们存储在本地存储中:考虑使用ISO 8601日期字符串,javascript日期很快就会变成一个痛苦的工作。(时区/夏令时…等)
是一个简单的例子https://codepen.io/morophix/pen/zYzKMjm