我遇到了从服务器检索“本地时间”的问题。当我打电话给'timedatectl status'时,我的意思是当地时间。
Local time: Sun 2018-05-27 14:45:37 EDT
Universal time: Sun 2018-05-27 18:45:37 UTC
Timezone: America/New_York (EDT, -0400)
NTP enabled: yes
NTP synchronized: no
RTC in local TZ: no
DST active: yes
Last DST change: DST began at
Sun 2018-03-11 01:59:59 EST
Sun 2018-03-11 03:00:00 EDT
Next DST change: DST ends (the clock jumps one hour backwards) at
Sun 2018-11-04 01:59:59 EDT
Sun 2018-11-04 01:00:00 EST
我能够从我的服务器访问UTC值但是我想要检索本地时间值,以反映我的应用程序中时区的任何系统更改。目前我通过在响应标头中请求日期来获取服务器时间,但如果系统上的时区发生变化,这对我没有帮助。这是用javascript完成的。
答案 0 :(得分:0)
这有帮助吗?
//get the current datetime
var weather1d=new Date();
// UTC & BST in my case
// UTC Sun, 27 May 2018 20:01:28 GMT
// Local Sun May 27 2018 21:01:28 GMT+0100 (GMT Summer Time)
console.log('UTC ',weather1d.toUTCString());
console.log('Local ',weather1d.toString());
答案 1 :(得分:0)
你需要一些服务器端技术。
根据您未传达的基础设施,您可以使用在网络服务器前建立的反向代理,或直接在网络服务器添加标题(服务器端包括,lua,...) 或者您在应用程序服务器中添加标头,如果您运行NodeJS,则可以使用JavaScript。
答案 2 :(得分:0)
对于那些发现自己处于这种情况的人。我有一个nginx网络服务器,并提出了两个解决方案。一个是打开SSI用于nginx并以这种方式回显值,但是我并不认为这将是最好的行动方案,所以第二个解决方案是从发回的时间中删除时区偏移量通过由moment.js转换的服务器。这是解决我的问题的解决方案。