在友好 URL 中显示日期范围的公认约定是什么?
例如,在时间跟踪应用程序中。我不想在 URL 中使用数据库的主键来表示特定的支付周期,而是使用更容易让用户区分的东西。
http://www.mytimesheet.com/11-1-2009-11-14-2009
http://www.mytimesheet.com/period-beginning-11-1-2009
这些似乎都没有削减它,但也许我只是过于挑剔了。
在友好 URL 中显示日期范围的公认约定是什么?
例如,在时间跟踪应用程序中。我不想在 URL 中使用数据库的主键来表示特定的支付周期,而是使用更容易让用户区分的东西。
http://www.mytimesheet.com/11-1-2009-11-14-2009
http://www.mytimesheet.com/period-beginning-11-1-2009
这些似乎都没有削减它,但也许我只是过于挑剔了。
您是否考虑过 ISO 格式的日期,尤其是它们的紧凑形式:YYYYMMDD
,那么应该有可能:
http://example.com/dates/20091101/20091131
具体来说,我认为对此没有任何公认的约定。
编辑:这也是关于路由......
我会说这取决于你,但我喜欢这个想法
http://foo.com/bar/from/2008/
http://foo.com/bar/from/2008/10/
http://foo.com/bar/from/2008/10/02
或者,它可以与诸如此类的东西结合使用/between/2008/10/2009/10
。
我要么使用类似的东西:
http://www.mytimesheet.com/start/11-1-2009/end/11-14-2009
或者
http://www.mytimesheet.com?start=11-1-2009&end=11-14-2009
但是丹尼尔说,如果可能的话,你可以在帖子中转换它,这样你就可以完全隐藏它。
我个人认为这是最好发布的数据类型,而不是用于指定路线。
(有时如果解决方案似乎以这种方式被破坏,那么该方法可能是不正确的。)
但是,如果您真的想指定日期,也许您应该考虑一种更容易在所有文化中以一致方式理解的格式,例如 yyyy-mmm-dd(例如 2009-nov-11)