我正在使用API运行Django应用程序服务,该API提供给javascript前端。数据是专门用于图表的,因此返回的数据是一个相当大的json,每次调用都是这样。
GET /pets?start_date=2015-01-01T05%3A00%3A00.000Z&end_date=2016-01-01T05%3A00%3A00.000Z?company_id=345&group_by=pet_type
`actual_date day month year day_of_year quarter 2015-04-10 10 4 2015 69 2 ....`
所有的日期都存储在世界协调时。
我天真地认为前端会在UTC中请求,而服务可以返回UTC中的数据。然而,这是一个庞大的图形数据,每次调用,因此前端进行这一计算不是最优的。
问题是,如果前端请求特定时区中的数据,如何最好地返回特定于该时区的聚合数据?
发布于 2016-04-04 22:20:51
数据库层当然不应该涉及-它应该是UTC和UTC,除非涉及时区有一些特殊的逻辑,而不是仅仅转换时间。
在理想的世界中,如果客户机想要在非UTC中显示数据,它应该在那里执行转换,因为这是一个更多的显示/呈现细节。
但是,如果由于某种原因,在客户机上计算是不可行的,那么只能在需要的范围内向上移动它--例如,如果您需要在服务器上进行计算,那么在控制器/请求处理程序级别这样做。
https://softwareengineering.stackexchange.com/questions/314742
复制相似问题