Ссылка на данные в формате JSON
В полезной нагрузке JSON как можно ссылаться на данные в одном месте из другого?
Вариант использования: представьте себе четко определенные сериализуемые объекты A (a1, a2, a3) и B (b1, b2, b3). Теперь рассмотрим полезную нагрузку HTTP-запроса, которая ожидает следующее:
{
data : {
"entityOne" : Entity Representation of entity A,
"entityTwo" : Entity Representation of entity B
},
relationships : {
"parenthood" : // Here I need to refer entityOne & entityTwo
// to express the notion of one being child of other
}
}
Пожалуйста, дайте мне знать ваши мысли для достижения этой ссылки.
Подход, который я рассмотрел:
Принудить клиента отправлять временный ссылочный идентификатор для каждого объекта в полезной нагрузке и использовать их в отношениях следующим образом
{
data : {
"entityOne" : { "id" : "temp1" -- other data for type A }
"entityTwo" : { "id" : "temp2" -- other data for type B }
},
relationships : {
"parenthood" : {
"parent" : "temp1",
"child" : "temp2"
}
}
}
1 ответ
Решение
Вы можете использовать JSON Reference https://tools.ietf.org/html/draft-pbryan-zyp-json-ref-03
{
"data" : {
"entityOne": { ... }
"entityTwo": { ... }
},
"relationships" : {
"parenthood" : {
"parent" : { "$ref": "#/data/entityOne" },
"child" : { "$ref": "#/data/entityTwo" }
}
}
}