我正在开发一个应用程序,该应用程序使用从其他系统接收的数据创建公司日历(它是更大的 J2EE 应用程序的一部分,用于日历导出,我使用的是 ical4j)。客户要求之一是将“秘密令牌”放入日历同步链接中,以便能够重置它以使先前生成的日历同步链接不可用。换句话说,它是这样工作的:
- 用户单击“导出链接”按钮,他/她会看到日历同步的链接(可以复制粘贴到 iCal、谷歌日历等)。该链接如下所示:
(服务器/常量部分)+ 用户名 + 密码(随机,每个用户唯一令牌)
用户复制它并与他/她的手机/其他日历阅读器执行日历同步
在每个同步请求之后(每次手机向服务器询问日历同步)应用程序检查请求中的令牌是否与存储在数据库中的令牌匹配(如果令牌有效),如果是,则返回日历(*.ics 文件)。
例如,如果手机被盗,用户可以重置此秘密令牌,并且如果手机向服务器请求日历同步,则请求和数据库中的令牌将不同,并且不会返回任何日历。
我的问题是,是否有可能(iCalendar 格式支持或任何其他方式)向用户显示错误(或让他们知道出了问题)。我的意思是,当用户尝试使用错误/过期令牌同步日历时,他/她所看到的(在thunderbird + Lightning 中测试)都是相同的旧日历 - 没有错误,没有任何更新的信息等(只有我能get 是服务器上的日志条目)。一些半解决方案是发送空日历,但它看起来更像是“黑客”而不是真正的解决方案。
谢谢你的帮助。