我可以在REST API中为不同的方法编写相同的path名吗?

我正在使用Swagger API编写REST API。 现在,我想以下面的方式编写插入,更新和删除的方法(我已经看到许多API在线上的这样的path):

  1. POST (插入)

/学生们

  1. PUT (用于更新)

/学生/ {} studentId

  1. 删除 (删除)

/学生/ {} studentId

现在,1是好的,但2和3是相同的path(但有不同的方法)。 Swagger API给我错误,当我这样写。 那么这真的不被允许?

如果不允许,那么定义不同path的最好方法是什么,而不要让它们变长,仍然看起来很酷?

Solutions Collecting From Web of "我可以在REST API中为不同的方法编写相同的path名吗?"

对于Swagger,它确实认为path/a/b/a/c是相同的,这会popup该错误。 有关于此的所有时间的讨论: https : //github.com/OAI/OpenAPI-Specification/issues/576 。

但是你仍然可以尝试类似的东西

  /students/{studentId}: parameters: - name: studentId ... get: ... put: ... 

查看@ Helen的评论以获取更多信息。