return 对 API 最感兴趣的日期和时间格式

Which date and time format is most interesting to return with an API

对于我们的API,我们想发送一些关于我们对象的信息,比如发布日期和时间你推荐哪种格式给return,以确保易于使用,不同的编程语言(PHP,Ruby,JavaScript, ...) ?

我想到了 2 个回复:

{
  "published": "2016-06-30T14:45:16+0200", //ISO 8601
  ...
}

{
  "published": 1467290716, //Timestamp
  ...
}

提前致谢!

UTC 时间戳更受青睐。以下是我的理由:

  1. 易于转换成任何语言。

  2. 您不必担心时区问题。

  3. 如果某些语言在处理 ISO - 2016-06-30T14:45:16+0200 等时间格式时遇到问题,则必须在更改时间格式之前求助于字符串格式。例如,旧版本的 Javascript 没有很好的日期处理库。

根据我的经验,我不会根据语言来决定格式,而是根据用法来决定。

如果只是语言问题,我会坚持使用时间戳,请注意您使用的时间戳长度(常规 32 位格式将在 2038 年 1 月因溢出而停止工作,所以也许您可能需要 64 位长的时间戳)

但如果您仅将日期用作人类可读信息,则无需将时间戳转换为文本,因此我会选择文本选项。