Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/40.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何识别客户';服务器端的NodeJS中的时区?_Javascript_Node.js_Heroku_Momentjs - Fatal编程技术网

Javascript 如何识别客户';服务器端的NodeJS中的时区?

Javascript 如何识别客户';服务器端的NodeJS中的时区?,javascript,node.js,heroku,momentjs,Javascript,Node.js,Heroku,Momentjs,我正在以UTC格式在mongodb数据库中节省时间。但我想根据客户的时区向他们显示时间。当前根据服务器的时区显示时间。我可以将服务器的时区更改为其他值,但它将再次是静态的,并且不会根据客户端的时区显示 我尝试使用getTimezoneOffset(),但它显示0偏移量,MomentJS guess函数显示UTC时区,即使客户端的时区是亚太地区。 那么,如何在后端使用NodeJS来获取客户端的时区或偏移量,而不是根据服务器的位置?您可以使用和。requestIp将为您提供客户端的ip,当您将该ip

我正在以UTC格式在mongodb数据库中节省时间。但我想根据客户的时区向他们显示时间。当前根据服务器的时区显示时间。我可以将服务器的时区更改为其他值,但它将再次是静态的,并且不会根据客户端的时区显示

我尝试使用getTimezoneOffset(),但它显示0偏移量,MomentJS guess函数显示UTC时区,即使客户端的时区是亚太地区。
那么,如何在后端使用NodeJS来获取客户端的时区或偏移量,而不是根据服务器的位置?

您可以使用和。requestIp将为您提供客户端的ip,当您将该ip传递给geoip时,它将为您提供包括时区在内的各种信息。然后,您可以使用该时区和时间将utc日期转换为该时区日期。

以utc格式将时间发送到浏览器。。。然后让浏览器显示客户端想要的任何内容-当然,不需要一行代码,这将为您提供尽可能多的帮助-示例。。。发送
1554625232340
。。。然后
客户端的新日期(1554625232340)
将能够在其时区中显示我正在使用模板引擎呈现页面,因此我必须在日期到达浏览器之前对其进行操作。如果这是不可能的,那么我考虑了两个解决方案:1。使用用户的IP地址2在会话中存储用户的时区。将类指定给前端的每个时间属性,然后使用您建议的解决方案在浏览器中对其进行操作。。。那么你认为哪种方式更可取呢?
所以我必须在日期到达浏览器之前操纵日期
不,让浏览器操纵日期好的,谢谢。在服务器端,这将变得非常复杂。