我有一个需要倒数计时器的应用。到期日期来自我带有REST API的后端。我需要在我的本机应用程序中计算剩余时间。但是我不能用智能手机的时间。因为用户可以在不同的时区/国家/地区,等等。我如何使用服务器的到期日响应来响应本机?
我还应该将剩余时间(以秒为单位)发送给用户吗?因此,我可以每秒倒数剩余时间吗?
https://www.example.com/getDueDate [POST]
返回:
Y-m-d H:i:s
(未来)的时间,例如2021-05-20 23:40:40
如果我使用经典的JavaScript倒数计时方法,则需要使用智能手机的时间。但我不想使用它。
NTP服务器方法对于本机而言可能很棘手。只是简单的计数器。
答案 0 :(得分:0)
为什么不同时发送服务器的当前时间和到期日期?然后从那里启动计时器?
话虽如此,该时间仍将取决于您的用户与服务器之间的往返时间(这将取决于他们的Internet连接和服务器的响应时间)。
答案 1 :(得分:0)
是的,有可能获得时间。我也在使用rest api(令牌基础身份验证和特定时间后的到期令牌)。我正在检查以下内容
var l_currentDateTimeSeconds;
l_currentDateTimeSeconds=((new Date().getTime() - "your_time_from_api") / 1000);
if (parseInt(l_CurrentDateTimeSeconds) < parseInt(your_time_from_api))
{
//failure case ;
}
else
{
//Success case;
}
时间的输出(以变量表示)将以秒为单位。造访以下连结,可能会有帮助 https://aboutreact.com/react-native-get-current-date-time/