2012-08-01 91 views
0

我有一個不斷記錄信息的移動設備。信息存儲在設備的本地數據庫中。每隔幾分鐘,設備就會通過REST API將數據上傳到服務器 - 有時上傳的數據對應同一張表中的幾十條記錄。現在,服務器響應確認向Web API提交的正確方法是什麼?

{status: "SAVED"} 

如果數據保存到服務器。爲了100%確定數據實際上傳(所以設備不會再嘗試上傳),這種簡單的響應足夠了嗎?或者我應該散列傳入的數據並用它響應,或者類似的東西?也許我應該發回設備表格行的本地行id

回答

2

如果整個請求確實成功保存,我認爲可以有一個非常簡單的「SUCCESS」響應,這很好。

但是,我認爲在出現問題時,您的響應需要包含未能保存的記錄的ID(或其他唯一標識符),以便它們可以排隊以重新發送。

如果相同的記錄失敗多次,您可能需要記錄錯誤或顯示錯誤,以便採取進一步措施。

成功的響應可能是簡單的東西如:

<response> 
    <status>1</status> 
</response> 

錯誤反應可能是這樣的:

<response> 
    <status>0</status> 
    <errorRecords> 
     <id>441</id> 
     <id>8462</id> 
     <id>12</id> 
    </errorRecords> 
</response> 

你可以得到看中,並有表達不同的意思不同的狀態代碼,更特定的消息。

+0

我結束了每個保存的ID的響應,並讓設備將上傳的響應標記爲響應。我仍然想知道這是否是絕對必要的。 – you786 2012-08-02 22:50:55

+0

雖然這樣做的好處是可以停止上傳已保存到服務器的數據,因爲由單個記錄導致的錯誤響應。 – you786 2012-08-02 22:51:38

相關問題