以 GWT 为单位获取客户端的时区



我的应用程序托管在一个时区为"A"的地方。用户可以从任何地方登录。假设他/她是从时区为"B"的地方登录的。我想要用户登录的时区。这样我就可以在他/她的时区中显示他的日期。

那么,有什么方法可以获取该用户的时区吗?

检索客户端时区的一种方法是通过本地JNI方法使用javascript代码,如下所示:

private native int getClientOffsetTimeZone() /*-{
    return new Date().getTimezoneOffset();
}-*/;

请注意,getTimezoneOffset()方法返回UTC时间和本地时间之间的时差,单位为分钟。

例如,如果您的时区是GMT+2,将返回-120。

GWT有com.google.gwt.core.client.JsDate库,它是Yeser提到的JSNI的包装器。该库公开了本机JavaScriptDate对象,它允许您使用getTimezoneOffset()

从客户端,您可以使用Date.getTimezoneOffset()检索时区偏移量,并将其传递给服务器,然后使用此偏移量创建正确的日期。

相关内容

  • 没有找到相关文章

最新更新