2013-02-12 19 views
1

這可能是一個非常簡單的問題,但我似乎無法找到明確的答案。我想從API的最佳實踐角度來看,你應該發送空字段(空字符串還是空值)還是應該從API中完全省略它們?你應該忽略API中的空字段嗎?

我看過其他的API,我可以看到空的字段正在發送。另外,對我來說,發送空白字段還會向API顯示消費者可用的內容,但另一方面,它是無緣無故的額外數據。

任何人都知道是否有正確答案/最佳做法?

回答

2

我不確定這是否會被所有人認爲是最佳實踐,但根據我的經驗,最好的選擇是您只需要客戶端發送他們需要的數據。因此,如果您的字段可以爲空或爲空,那麼它們不需要由請求者發送。

+0

從GET角度來看,如果包含所有可用字段,我認爲API會自動記錄,儘管它們可能不適用於該特定條目。我可以肯定地看到兩方面的爭論,這就是爲什麼我認爲能夠看到其他人的想法是很好的原因。 – Bunkered 2013-02-12 10:31:02

+1

嗯......好的,當你發回數據時,它取決於你的應用程序,如果它是一個類似於表的概念,那麼是的,發送所有的字段,但是如果它更像對象那麼可能不是。這也取決於你的模式有多複雜。我會說,雖然沒有API是真的自我記錄。即使所有字段都返回,您也需要概述數據類型/驗證。 API文檔絕對是最佳實踐。 – ChrisIPowell 2013-02-12 10:40:09

+0

@ChrisPowell謝謝。我想我們會採用省略方法。所有的字段細節都在文檔中,所以你的方法是有道理的。 – Bunkered 2013-02-12 10:51:05