我正在构建一个相当复杂的 Web API,但我有点困惑的是子资源的创建。
具体来说,从游戏的角度思考,
一场比赛属于一个回合,一个回合属于一个赛季,一个赛季属于一场比赛。在其父上下文之外,每个项目都没有相关性,但无论如何它们都是资源。
所以我想知道我的 url 模式应该是什么来创建游戏?
//full tree map
PUT /competitions/1/seasons/2/rounds/3/games
//each sub resource has it's own top level, but must be created under
//it's parent
PUT /rounds/3/games
//each sub resource has it's own top level, and we include the parent
//id in the resource body.
PUT /games
我更喜欢 /games 因为它是自己的顶级,因为它更深入,例如,一个游戏有一个统计数据,一个统计数据有一个视频,所以做完整的树图可能会变得非常繁重,也许我应该支持所有三?