我有一个调查答复数据库,我正在尝试构建一个RESTful API来公开此数据。API应该能够返回以下信息:
在确定这种情况下资源的结构时,我遇到了问题。
对于调查,问题和回答,这非常简单:
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
还是我完全弄错了,有更好的方法吗?
保持调查为头等舱公民,我会像这样构造它
/surveys
:获取所有调查/surveys/<surveyId>/questions
:获取调查问题。/surveys/<surveyId>/questions/<questionId>/answers
:获取调查问题的答案。/surveys/<surveyId>/reports
:获取调查报告。注意:如果您认为报告将被多个参数过滤,则可以考虑将其作为搜索终点。
得到 /surveys/<surveyId>/reports?questionId=<questionId>
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句