2016-12-28 55 views
1

我认为在查询发布的ReleaseDate字段时有一个错误。比方说,我有一个ReleaseDate为04/24/2017 EDT的版本,当我从API请求获得响应并查看该版本的ReleaseDate字段时,它将在2017年4月25日发布日期时间格式显然),比实际日期提前一天。我正在使用完整的日历构建一个内部使用的日历应用程序,而这个bug真的很烦人。我是否正确地说这是一个错误?是否有任何解决方法不涉及在查询之后编写代码来修复日期?谢谢。查询发布日期时是否存在拉力赛API的错误?

+0

此外,使用API​​,如果我通过的值更新场时就像2017年4月25日的新价值一样,它也会在一天后更新它,这次是一天后,所以存储的价值将是04/24/2017 –

回答

1

很确定这是与时区有关的。 WSAPI中的日期始终是UTC。假设您的工作空间配置为东部,则返回的日期可能是第二天:

结束日期为04/24/2017的版本可能从WSAPI返回,日期类似2017-04-25T03:59:59.000Z,当转换为EDT时24日结束的一天。

在设置日期时,您还需要具体指定日期,因为如果没有指定时间,后端将再次尝试强制将日期转换为UTC。当前行为或详细信息页面将在该时区的当天设置为中午。所以这样的事情:2017-04-24T12:00:00-05:00

希望有所帮助。我们去年在产品和api上做了大量工作,试图提供更加一致的时区体验。它仍然可能令人困惑,但一个好的经验法则是始终是特定的,并且在使用api处理日期时包含时间和时区偏移量。

如果您在使用应用程序的SDK,该moment.js库已经包括在内,是超级方便的使用日期:
https://help.rallydev.com/apps/2.1/doc/#!/guide/third_party_libs-section-moment.js-2.10.3

+0

就是这样。干杯。 –