Date.now() 拿到的时间是基于设备时间计算出来的,如果两部手机设置的系统时间不一样,那在两部手机上分别执行 Date.now() 会拿到不一样的值。
Date.now()
有些用户会把手机的时间故意调快几分钟,所以我们在设计代码时,应该默认不信任 Date.now() 的值,尤其是后端需要和前端保持时间同步的情况。
一种解决方法是前后端均从同一个源头(Single source of truth)获取时间值,网上找到以下两个 API,淘宝的,可获取当前时间戳:
国外也有这样的服务,但没那么快: