2016-03-15 47 views
0

我已經創建了應用程序和一個分頁的API,它們彼此相連。不過,對於僅顯示更新數據的最佳實踐,我有點困惑。例如,如果我有一天檢索數據並將其保存到我的移動數據庫中。第二天應用程序將如何知道它應該提出請求並僅顯示剛剛從數據庫中獲取的特定數據。我需要製造一些國旗或看看createdAt嗎?如何確保你只顯示來自Rest api的更新數據

+0

對不起Eric D.但是你有什麼建議嗎? –

+0

可否請您告訴我您的數據在服務器端更改的頻率。 – Daljeet

+0

數據不會經常變化,但它會根據用戶位置的距離返回數據,因此結果可能會有很大差異。 –

回答

1

發出請求時,請包括If-None-Match標頭與本地資源的ETagIf-Modified-Since標頭以及請求本地資源的日期。

配置您的服務器以查找標題並在數據未更改時返回304 Not Modified。這至少可以爲你節省一些流量。另外,如果資源數據是相對靜態的,或者如果客戶端可以容忍陳舊的客戶端數據,則可以將caching headers添加到您的響應中。只要緩存的請求有效,請求就不會離開您的客戶端。

理想情況下,您希望儘可能設計您的API以支持此操作。例如,請求「在50米內給我所有東西」返回一個URI列表。然後,API將只需要爲那些陳舊的URI訪問服務器。

+0

你會限制記錄的數量,或者只是像你在其他api中提到的那樣設置一個50米的半徑? –

+0

@PeterPik我無法真正回答這個問題。你必須在商店的商業方面詢問他們想要的一個人。 –

+0

以及我的意思是在服務器端加載時間?如果你只限於米,你可以得到很多記錄 –