2017-10-19 9 views
0

ページにページ番号を付けました。ユーザーが次のページボタンで3回クリックすると、3つのリクエストがサーバーに送信されます。それを防ぐ最も良い解決策は何でしょうか?次のページがロードされるまでAngularJSリソースが重複したリクエストを防止します

私はngResource

+1

要求が完了していない間にページ分割を無効にしますか? – bluehipy

答えて

0

最適な解決策は、ボタンのクリック機能をデバウンスすることです。関数をデバウンスすると、それ以降のX秒間の関数の呼び出しは無視されます。

Lodashにはスロットルとデバウンスの方法が用意されています。

あなたが利用可能lodashを持っていけない場合は、それを使用してクリックされたときにだけボタンを無効にして行くNG-無効これは物事のクライアント側をソートする一方で、それは誰か書いて、あなたのAPIを叩くためにいくつかの悪質なコードを防ぐことはできません

あなたが時間を持っている場合、いくつかのサーバー側の保護は良い考えです。

1

angularJs 1.6.6を使用していますが、 またはdenounceクリックイベントをボタンのクリックを無効にします。

関連する問題