2011-03-14 102 views
0

我正在開發一個應用程序,用於從其他系統(它是更大的J2EE應用程序的一部分,我使用ical4j的日曆導出)中收集數據來創建公司日曆。客戶端要求之一是將「祕密令牌」放入日曆同步鏈接中,以便能夠重置該鏈接以使先前生成的日曆同步鏈接不可用。換句話說,它是這樣工作的:格式支持錯誤

  • 用戶點擊「導出鏈接」按鈕,他/她看到的鏈接,日曆同步(可複製粘貼到iCal中,谷歌日曆等)。鏈接看起來如下:

(服務器/常量部分)+使用者名稱+密碼(隨機的,獨特的,每個用戶的令牌)

  • 用戶複製並與他/執行日曆同步她的手機/其他日曆閱讀器

  • 每次同步請求(每次手機要求服務器進行日曆同步)後,應用程序會檢查請求中的令牌是否與存儲在數據庫中的令牌匹配(如果令牌有效),並且如果是 - 日曆* .ics文件)返回。

  • 例如,如果手機被盜,用戶可以重置該祕密令牌,並且如果電話向服務器請求日曆同步,並且來自請求和來自數據庫的令牌會不同並且不會返回日曆。

我的問題是,是否有可能(iCalendar格式的支持或任何其他方式),以顯示錯誤的用戶(或讓他們知道出事了)。我的意思是,當用戶嘗試使用錯誤/過期的標記同步日曆時,他/她會看到的所有(在thunderbird +閃電中測試)是相同的舊日曆 - 沒有錯誤,沒有任何信息更新,等等(只有我可以get是服務器上的日誌條目)。一些半解決方案是發送空日曆,但看起來更像是「黑客」而不是真正的解決方案。

感謝您的任何幫助。

回答

0

那麼,你可以發送一個401未經授權的HTTP響應(帶有一個新的域字符串),這可能會導致客戶端顯示密碼對話框(再次)。

(我不確定如果403 Forbidden在Lightning中做了什麼有用的事情)。

相關問題