首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GAE & JavaScript日期时间同步

GAE & JavaScript日期时间同步
EN

Stack Overflow用户
提问于 2014-05-07 09:47:03
回答 1查看 93关注 0票数 1

客户机和服务器之间同步时间的最佳实践是什么?

我有一个查询数据存储的函数:

代码语言:javascript
复制
@classmethod
def read( cls, language=None, user=None, filters=None, **q_options ):
  assert not isinstance( cls, BaseModel )
  assert issubclass( cls, BaseModel )

  query = cls.query( cls.language == language )
  if filters:
    for name, value in cls.attributes( filters, [] ).iteritems():
      if name == 'updated':
        query = query.filter( getattr(cls, name) >= value )
      else:
        query = query.filter( getattr( cls, name ) == value )
    # logging.info( query )
    # Query(kind='Page', filters=AND(
    #   FilterNode('language', '=', 'en'),
    #   FilterNode('updated', '>=', datetime.datetime(2014, 5, 7, 9, 12, 51, 142000))))
    return query.fetch()
  data = query.fetch( **q_options )
  return cls.sort( data )

使用ajax调用执行时:

代码语言:javascript
复制
{method: 'GET', url: '/something.json?updated=' + (new Date().getTime() / 1000)}

它应该返回在调用中提供的时间之后更新的项。(我使用它来同步浏览器的localStorage和实际数据)。但是我发现这是因为服务器和客户端之间的时间差。

我在UTC/GMT +2小时,CEST (中欧夏季时间)时区(这是javascript发送的)和GAE dev_appserver在格林尼治标准时间工作。对此作出补偿:

代码语言:javascript
复制
updated=((new Date().getTime() - 1000*60*60*2) / 1000)

解决了这个问题,但是硬编码并不是针对不同时区的解决方案。所以,很少有问题:

1)实际GAE服务器的时区是多少?它与dev_appserver的相同吗?

2)我是否应该处理客户机或服务器上下文(javascript或python)的差异?

3)还有什么我应该知道的吗?

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-05-07 10:14:16

本文描述了一个解决方案:如何在中获取当前英国时间

Google总是在UTC,所以您需要像比兹这样的库来调整您的首选项。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23514317

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档