2016-06-16 58 views
2

我正在開發一個用於常見CRUD操作(像產品,類別的實體)的web api,我想知道pro/cons抑制空屬性,以及我應該注意選擇忽略還是不忽略這些字段。何時應該在REST API響應中忽略空屬性?

例子:

{ 
    "name": "Product A", 
    "description": null 
} 

{ 
    "name": "Product A" 
} 
+0

後問我發現了兩個鏈接,但它不是對我的結論。 http://stackoverflow.com/questions/15686995 http://programmers.stackexchange.com/questions/285010 –

回答

2

如果客戶端發送一個顯式null他希望刪除的數值,此屬性。在你的第一個例子中,他想要刪除description值。

如果客戶端根本沒有發送屬性,他希望保持屬性的值不變。在第二個例子中,他希望保留description的值和除name之外的所有其他屬性不變。

0

雖然您正在創建新記錄,但兩者都沒有問題。但在更新新記錄時,如果您傳遞null以進行描述,則已刪除的記錄中的記錄將被刪除,如果您未傳遞任何記錄在數據庫將存在,因爲它是。