.NetCore在Linux下做时区校正

客户端由于使用的是ThinyLinux系统(安装NTP时区不方便),默认是GMT(格林威治标准时间)
服务端时区是北京时间,客户端拿到服务端时间后使用DateTime类型相关操作所导致时间变为GMT时间
此时我们需要做一个时区矫正的操作由GMT时间更正为GMT+0800时间
也就是说在客户端时间+8小时就是北京时间

GMT(Greenwich Mean Time)是格林尼治平时:
由于地球轨道并非圆形,其运行速度又随着地球与太阳的距离改变而出现变化,因此视太阳时欠缺均匀性。视太阳日的长度同时亦受到地球自转轴相对轨道面的倾斜度所影响。为着要纠正上述的不均匀性,天文学家计算地球非圆形轨迹与极轴倾斜对视太阳时的效应。平太阳时就是指经修订后的视太阳时。在格林尼治子午线上的平太阳时称为世界时(UT0),又叫格林尼治平时(GMT)。 为了确保协调世界时与世界时(UT1)相差不会超过0.9秒,有需要时便会在协调世界时内加上正或负闰秒。因此协调世界时与国际原子时(TAI)之间会出现若干整数秒的差别。位于巴黎的国际地球自转事务*局(IERS)负责决定何时加入闰秒。

GMT时间+8小时所得结果就是北京时间。

GMT时间:格林尼治标准时间,是指位于英国伦敦郊区的皇家格林尼治天文台的标准时间,因为本初子午线被定义在通过那里的经线。

北京时间:是中国采用国际时区东八时区的区时作为标准时间。“北京时间”的发播不在北京,而在陕西蒲城。而东经120度的地方太阳时要比北京的地方时早约14分半钟。

上一篇:NetCore 使用Session和Cookie


下一篇:领导说 自带流量 + 3000薪资