这可能是一个非常模糊的问题,但请耐心等待。
我正在开发一个应用程序,它要求我在客户端计算机上执行系统时间检查。我试图解决的问题是,当客户跨越时区并改变系统时间而不是改变时区时,它会在oauth协商期间产生问题。我应该如何解决此问题,以便在客户端尝试登录应用程序而不必手动检测此类问题时可以自行检测此问题?
答案 0 :(得分:3)
您可以在new DateTime.now()
上致电toUtc()
将其转换为UTC。如果它在UTC中不受时区的影响,并且字符串表示看起来像"2013-10-18 08:52:16.861Z"
(结尾的Z表示UTC)。
您应该可以使用UTC中的DateTime
进行OAuth协商。如果没有,请分享更多细节;它可能是Dart或您的OAuth客户端中的错误。
答案 1 :(得分:-2)
听起来你的时区非常重要,所以你不应该用10英尺长的棍子来信任JavaScript系统时间。
如果我是你,我会使用PHP对它们进行地理定位,并根据它们的位置应用时区。