与 RESTful API 中字段的多对多关系

many-to-many relationships with fields in a RESTful API

我 post 同一个未回答的问题 from a comment。 假设我有 2 个实体(团队和玩家)和一个多对多关系(注册),它们具有 id_team 和 id_player 字段以及其他信息,例如 registrationDate.

GET /teams/{id}/players 给我特定球队的所有球员

GET /players/{id}/teams 给我注册特定球员的所有球队。

我的第一个问题是,我可以创建这个资源吗: GET /teams/{id}/registrations ?

我的第二个问题是,如果我想获得所有注册怎么办?我可以通过这个 URI 访问它们吗: GET /registrations ?

我认为你应该使用

/registrations/
/registrations/player:{pid}/
/registrations/team:{tid}/
/registrations/{rid}

所以你应该添加一个关系资源并使用扁平化 URI,而不是创建一个嵌套 URI,如果你不仅要读取,还要修改这种资源,那么嵌套 URI 就不那么一致了。

注:

顺便说一句。这类似于关系数据库的关系表,所以我想这个想法对你来说不会太新。