我开发rest api并考虑以下任务。我需要发布一个车辆实体并将现有的驱动程序绑定到它。为这种请求格式化json的常用方法是什么? 我选择其中一种变体,但也许有更好的解决方案:
1. {"model":"Corolla","number":"12345", "driver": {"id": 5}}
2. {"model":"Corolla","number":"12345", "driver": {"id": 5, "name": "John"}}
3. {"model":"Corolla","number":"12345", "driverId": 5}
问题是如何传递有关已知id的已创建驱动程序实体的信息。
答案 0 :(得分:2)
您必须使用超媒体类型,例如使用HAL + JSON你可以这样做:
{
"model":"Corolla",
"number":"12345",
"_embedded": {
"driver": {
"name": "John",
"_links": {
"self": {
"href": "/drivers/5"
}
}
}
},
"_links": {
"self": {
"href": "/models/corolla"
}
}
}
答案 1 :(得分:1)
根据jsonapi,这可能是一个很好的格式:
{
"model":"Corolla",
"number":"12345"
"links":
{
"driver": "5"
}
}
本网站定义的约定可能对您有用。