Должны ли пустые значения быть включены в ответы JSON от REST API?
Я занимаюсь разработкой и разработкой RESTful API. Я придерживаюсь прагматичного, ориентированного на ресурсы подхода к API (ресурсо-ориентированный, унифицированный интерфейс, адресность, но не настоящий HATEOAS). Одна точка, о которой я не уверен, заключается в том, как приближаться к нулевым значениям в объектах.
Должен ли я включать поля с нулевыми значениями в ответах API?
Пример:
{
"fieldA": "AAA",
"fieldB": null
}
Или я должен просто оставить эти поля вообще, если у системы нет данных для этих полей?
Пример:
{
"fieldA": "AAA"
}
Ответы
Ответ 1
Об этом недавно говорилось в API-Craft. Общий консенсус заключался в том, что существует потенциальная смысловая разница между отсутствием значения по сравнению с включением нулевого значения.
Если семантическое значение не будет получено для вашего конкретного случая использования, я бы сказал, посмотрите на своих целевых потребителей API и подумайте о том, может ли их упущение вызвать проблемы.