Web Services 我是否应该使用嵌套路由?

rpppsulh  于 2022-11-15  发布在  其他
关注(0)|答案(1)|浏览(155)

下面列出了我计划在文档拍摄应用中使用的端点。我目前正在与自己争论是应该包括/users/{id}/documents还是只包括/documents/users/{id}/documents意味着我的路线非常嵌套,很难维护。
那么你觉得我的api设计看起来不错吗,或者有什么你想改变的地方吗?

GET /documents
POST /documents/new
PUT /documents/{id}/save
DELETE /documents/{id}/delete
PUT /documents/{id}/share

POST /auth/signup
POST /auth/login
GET /auth/loggedin
POST /auth/logout

PUT /users/{id}/password/update
PUT /users/{id}/email/update
PUT /users/{id}/username/update
jyztefdp

jyztefdp1#

HTTP动词也有一些含义。
例如,当您使用POST作为/documents时,这意味着您想要创建一个。因此,您不需要/documents/new。因此,我们可以如下重写路由:

GET /documents
POST /documents
PUT /documents/{id}
DELETE /documents/{id}
PUT /documents/share/{id}

POST /auth/signup
POST /auth/login
GET /auth/loggedin
POST /auth/logout

PUT /users/{id}/password
PUT /users/{id}/email
PUT /users/{id}/username

但这完全取决于你选择端点的方式,有些程序员很少使用PUTDELETE方法。
例如,它们将POST用作/documents/delete/{id}来删除
我个人喜欢使用各种HTTP方法,

相关问题