2011-03-18 101 views
1

我將一些JAX-RS(Resteasy)Web服務公開給遠程客戶端。從JAX-RS客戶端確認

其中一個特別的服務就像「自從我上次問你以來給我所有的消息」;在服務器上我做了我的查詢和所有,如果一切正常,我更新客戶端上的一個屬性,告訴我未來的請求將從該日期開始。

這裏的問題是,如果在返回答案時出現問題,我可能已經更新了「lastTime」屬性,因此客戶端可能會發現自己處於永不接收部分數據的情況。

什麼是從客戶端添加某種「確認」的好方法?東西告訴我,它收到並正確處理了所有的數據...

回答

2

我認爲你的概念是錯誤的:服務器應該是無狀態的,而客戶端應該知道他感興趣的數據。
例如,客戶端可以使用If-Modified-Since標題來獲取在標題中開始日期的信息。如果服務器沒有新的,它應該返回304(未修改)代碼。

+0

感謝您的想法,我很新的REST,仍然需要學習很多;我們有一個略有不同的想法,但我認爲我們可以實現這樣的背景 – 2011-03-19 10:00:36