REST API的推荐日期格式

时间:2010-08-24 16:02:01

标签: java javascript datetime timestamp date-formatting

我正在编写一个公开REST API的应用程序。一些查询参数将是日期/时间(精确到秒),并且一些响应将是时间戳(精确到毫秒)。

服务器上的API实现是Java。客户端应用程序可以是任何东西 - java,javascript,.NET。 API返回XML或JSON数据。日期/时间数据存储在Oracle数据库中。

根据先前的痛苦,是否有人提出了传递这些日期/时间值的最佳格式格式的建议。我想我自己只用一个很好的老式长存储自1970年1月1日00:00:00 GMT以来的毫秒数。

修改 API中涵盖的日期范围适用于实时事件,因此在2010年之前没有任何内容,并且(在此处将自己设置为滥用行为)在2038年之后没有任何内容。

我猜最好将由

决定

a)各种各样的语言支持将这个长时间转换为内部日期对象,而无需编写代码来执行此操作。

b)最低的CPU开销(在服务器应用程序上)

1 个答案:

答案 0 :(得分:8)

ISO 8601一路

使用任何基于纪元的方法意味着您将被绑定到带符号的32位INT的范围(在大多数系统中)(1901-12-13T20:45:52 + 00:00到2038-01-19T03:14 :07 + 00:00),它实际上更像是时间戳而不是日期,因为它无法处理影响深远的历史或未来日期。