0

在决定哪个路由更 RESTful 时遇到了一些麻烦。为了简要介绍一下,我正在为抽奖应用程序构建一个 API。最高级别是客户,其次是抽奖,然后是提交。

我对创建新抽奖和提交的最佳途径感到困惑。

选项1

POST /sweepstakes [passing along client_id as a parameter]

选项 2

POST /clients/:client_id/sweepstakes [using client id in route to create]

这是我所有路线的 GIST。希望有人可以帮助我。https://gist.github.com/4504221

4

2 回答 2

1

我不会费心让 REST URI 代表层次结构。

/client/:client_id should return a list of the client's sweepstakes URIs (among other data.)
/sweepstakes/:sweepstakes_id will return a list of all submissions URIs for that sweepstakes id (among other data.)
/submission/:submission_id is exactly what you think.

这很简单,但我想不出让 URI 更复杂的理由。如果我遗漏了什么,请告诉我。

编辑:哦,您指的是创建资源:

我仍然会使用上述 URI。

POST /client/
POST /sweepstakes/
POST /submission/

在请求正文中传递所需的数据并在响应中返回 id。使用 PUT 更新:

PUT /client/:client_id

等等

于 2013-01-10T18:34:44.793 回答
0

答案几乎与您将创建的资源的 URI 有关:

  • POST /去创造/:id
  • POST /sweepstakes/去创造/sweepstakes/:id
  • POST /clients/:id_a/sweepstakes/去创造/clients/:id_a/sweepstakes/:id_b
于 2013-01-10T20:33:14.927 回答