今回は、jsをサーバー時間と効率的に同期する方法についてお届けします。jsをサーバー時間と効率的に同期するための注意事項を紹介します。
オプション 1: サーバーにアクセスして、カウントダウンごとに時刻をリクエストします
//开启定时器 var timer = setInterval(function () { //执行请求,获取当前服务端时间并进行相应操作 }, 1000);
このソリューションは、経験が浅い開発者にとっては望ましくないことが知られています。これにより、サーバーに想像を絶する負荷がかかり、アプリケーションがクラッシュする可能性があるためです。このページに 1 分間滞在すると、リクエストは 60 回送信され、この時点で 100 人がこのページにアクセスしている場合、人数が増え続けると 1 分間に 6,000 回のリクエストが送信されます。間違いなくサーバーに不必要な負荷がかかります。さらに、リクエストに遅延があり、ネットワークステータスとも密接に関係しているため、このソリューションのカウントダウンにも大きな誤差が生じます。
オプション 2: サーバー時間に基づいてカウントダウンをサーバー タイムスタンプ から返します
//开启定时器 //假设请求获取到一个时间戳时间差 dateDiff var timer = setInterval(function () { //每秒会获取本地时间,这样就算执行的周期不准确 也可以准确的获取时间差 var countDown = endTime - (+Date.now())/1000 + dateDiff; // 倒计时页面渲染 }, 1000);
利点:
ページ内で 1 回リクエストすると、ライフサイクルの精度が高くなります。ページが長期間開いていても、依然として高い精度が維持されます。
欠点:
angularJS+Ionicによるモバイル端末への画像アップロード(コード付き)
以上がjs はサーバーと時間を効率的に同期しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。