【发布时间】:2021-11-02 20:34:04
【问题描述】:
我有一个网络应用程序,我在其中设置了未来日期和时间的提醒,当时间到时它应该通知用户。 我这样做的问题很少 我已将日期时间存储在 oracle 数据库中,并且我希望我的应用程序继续查看它并在遇到时间时触发通知。 将日期时间存储在数据库中是正确的方法吗?还是有其他我们可以轻松触发的方法?我对会话/本地存储并不完全满意。 有人请指导我。
【问题讨论】:
标签: javascript java html html5-canvas
我有一个网络应用程序,我在其中设置了未来日期和时间的提醒,当时间到时它应该通知用户。 我这样做的问题很少 我已将日期时间存储在 oracle 数据库中,并且我希望我的应用程序继续查看它并在遇到时间时触发通知。 将日期时间存储在数据库中是正确的方法吗?还是有其他我们可以轻松触发的方法?我对会话/本地存储并不完全满意。 有人请指导我。
【问题讨论】:
标签: javascript java html html5-canvas
假设您的其他用户数据与它一起存储,则可以将通知保存在 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
【讨论】: