在RESTful API中表示资源

rufus1530

我有一个调查答复数据库,我正在尝试构建一个RESTful API来公开此数据。API应该能够返回以下信息:

  1. 可用调查
  2. 问题
  3. 答案
  4. 报告(每个调查问题对每种答案的回答总和)

在确定这种情况下资源的结构时,我遇到了问题。

对于调查,问题和回答,这非常简单:

GET /surveys
GET /questions // filter by surveyId possible
GET /responses // filter by questionId and SurveyId possible

使报告适合此结构的最佳方法是什么?是否设置单独的路线,例如:

GET /reports/responses-by-question?surveyId=1

还是将其添加为响应路径中的下一个级别?例如

GET /responses/by-question?surveyId=1

还是我完全弄错了,有更好的方法吗?

德库尔卡尼

保持调查为头等舱公民,我会像这样构造它

  1. GET /surveys:获取所有调查
  2. GET /surveys/<surveyId>/questions:获取调查问题。
  3. GET /surveys/<surveyId>/questions/<questionId>/answers:获取调查问题的答案。
  4. GET /surveys/<surveyId>/reports:获取调查报告。

注意:如果您认为报告将被多个参数过滤,则可以考虑将其作为搜索终点。

得到 /surveys/<surveyId>/reports?questionId=<questionId>

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章