Unix时间戳或带时区的字符串?

时间:2014-03-23 15:03:41

标签: api rest time unix-timestamp

我的Web REST API服务我决定将dateTime数据作为带有时区的字符串返回,如下所示:"someDate":"2012-01-23T22:52:37.039+02:00"我想知道,它是多么惯用?如果我把它作为Unix时间戳返回,它会更明智吗?

3 个答案:

答案 0 :(得分:7)

就个人而言,我更喜欢在这种情况下使用unix时间戳,因为它完全与时区无关,并且时区解释完全取决于客户端。此外,根据您的客户端,将unix时间戳解析为日期而不是日期字符串的代码通常较少,但这可能只是一个辅助考虑因素。

答案 1 :(得分:3)

我个人更喜欢使用“大纪元时间”。它的可读性不是很高,但它定义得非常好,比其他格式短得多。

参考文献:

答案 2 :(得分:1)

格式在RFC 3339: Date and Time on the Internet: Timestamps - ISO 8601的简介

中描述

它是明确的,人性和机器可读。

POSIX时间戳的可读性较低,例如1327351957.039,并且没有当地时间的指示。

如果解析日期时间字符串是应用程序中的性能瓶颈,那么您可以缓存时间戳值。