Размещение вложенного объекта — возврат вложенного объекта внутри родительского

#rest

Вопрос:

Предположим, что у нас есть ресурс Post (это всего лишь фиктивный пример):

ПОЛУЧИТЬ /api/сообщения/1

 {
  "id": 1,
  "header": null,
  "content": null
}
 

А теперь мы хотели бы создать заголовок внутри поста № 1.

СООБЩЕНИЕ /api/сообщения/1/заголовок

 {
  "color": "blue",
  "title": "Some title"
}
 

Теперь, можно ли для запроса на публикацию выше вернуть следующий ответ?

 {
  "id": 1,
  "header": {
    "id": 1,
    "color": "blue",
    "title": "Some title"
  },
  "content": null
}
 

Таким образом, в основном Заголовок был создан внутри сообщения и возвращен как часть сообщения.

Кроме того, если нам нужно ПОЛУЧИТЬ заголовок для поста№1:

ПОЛУЧИТЬ api/сообщения/1/заголовок

  {
   "id": 1,
   "color": "blue",
   "title": "Some title"
}
 

Так что здесь возвращается только заголовок.

Изменить: Отформатированный JSON после ответа @Mike Slinn.

Ответ №1:

Вложенные объекты JSON не являются проблемой.

Проблемы с JSON, которые вы показываете, заключаются в следующем:

  • Одинарные кавычки используются вместо двойных кавычек. Возможно, вы пишете на Python и сериализуете диктант в JSON? Если так, то никаких проблем. В противном случае вам необходимо заменить одинарные кавычки двойными кавычками.
  • Аналогично, ключи должны быть заключены в двойные кавычки.
  {
   "id": 1,
   "color": "blue",
   "title": "Some title"
}
 

Комментарии:

1. Спасибо, Майк. Пожалуйста, не обращайте внимания на JSON. Меня просто интересует вопрос (выделен жирным шрифтом) —> Теперь, можно ли для запроса на публикацию выше вернуть следующий ответ?

2. Я ответил «да».