我正在使用nodejs / express设计restful api。
迄今为止相当标准的东西。现在我想过滤时间(timestamp属性)。环顾四周,我找不到任何关于按时过滤的好例子。任何人都有很好的例子。
我想出的最好的是: /报告开始= 2013年7月13日&安培;停止= 2013年7月14日
哪个好,除了那时我不得不假设< =或<和>或> =并且不能在查询中表达不同的东西。
有没有一种很好的方式来表示以下查询?
提前致谢
答案 0 :(得分:1)
提供类似> or >=
的表达式并不是一个好的REST设计。我建议使用不同的查询参数
startDate - 表示请求的过滤器的开始日期
持续时间 - 以天为单位从startDate开始。然后您的请求看起来像
timestamp > 2013-07-13 && timestamp < 2013-07-14 --- startDate=2013-07-13&duration=0
timestamp >= 2013-07-13 && timestamp < 2013-07-14 --- startDate=2013-07-13&duration=1
timestamp > 2013-07-13 && timestamp <= 2013-07-14 --- startDate=2013-07-14&duration=1
timestamp >= 2013-07-13 && timestamp <= 2013-07-14--- startDate=2013-07-13&duration=2
REST API的查询参数应该明确定义目的。