我正在創建一個將結果作爲JSON返回的API。當值爲null時,是否應該在結果中包含鍵?是否有最佳做法?例如:JSON是否包含空值
{
"title":"Foo Bar",
"author":"Joe Blow",
"isbn":null
}
或
{
"title":"Foo Bar",
"author":"Joe Blow"
}
由於第二是小我傾向於這種風格,但我不知道是否有一個首選的樣式或沒有。從客戶角度來看,這兩種款式在功能上都是相同的。任何對每個人的利弊?
這是不可能的正確答案。正確答案取決於應用程序的要求。 OP已經簡單地選擇了適合他的要求的答案。如果您的應用程序需要區分是否知道「isbn」是否爲空,而如果由於其他原因可能沒有從服務器發送「isbn」,則需要包含它。 – Jacob
@Jacob儘管我沒有這樣說,但我對這個問題的意圖是,表示響應的「完整」JSON正在返回。當客戶可以假設這兩種方法之間似乎沒有功能差異。如果API有選擇地不返回鍵/值,那麼是的,這會對採取哪種方法產生很大的影響。 – jjathman
第一個表示法的好處是保留了對象模式,並且該數據的存在不會造成模糊。在第二種格式中,這些信息會丟失。 JSON規範並不要求格式AFAIK –