Ini sangat mudah untuk dilaksanakan menggunakan redis Kunci digunakan untuk menyimpan bilangan penyerahan Jika kunci dikira. Dapatkan kiraan daripada redis setiap kali anda menyerahkan
Jika kiraan kosong, tetapkan nilai kiraan kepada 1, tetapkan tamat masa kepada satu minit, dan serahkan seperti biasa;
Jika nilai kiraan tidak kosong dan lebih besar daripada atau sama dengan 5, mesej ralat akan dilaporkan "Operasi adalah kerap, sila masukkan kod pengesahan"
Jika nilai kiraan tidak kosong dan kurang daripada 5, ia akan diserahkan seperti biasa dan nilai kiraan akan ditambah satu.
Rekodkan masa penjanaan setiap teg Jika peraturannya ialah hanya 4 teg boleh dijana dalam satu minit, yang kelima akan menggesa ralat Sejurus sebelum menambah yang kelima, Bandingkan masa penjanaan yang pertama daripada empat yang terbaharu dengan masa semasa untuk melihat sama ada ia melebihi 60 saat Jika tidak, ralat akan dilaporkan.
Gunakan sesi untuk merekodkan dua nilai, satu ialah bilangan penyerahan $count dan satu lagi ialah masa penyerahan $time. ++$count==5 [Syarat 1] dikesan setiap kali ia diserahkan, time()-$time>=60 saat [Syarat 2]. cuma syaratnya dipenuhi 1 maka $count=0;$time=time();
Ini sangat mudah untuk dilaksanakan menggunakan redis Kunci digunakan untuk menyimpan bilangan penyerahan Jika kunci dikira.
Dapatkan kiraan daripada redis setiap kali anda menyerahkan
Jika kiraan kosong, tetapkan nilai kiraan kepada 1, tetapkan tamat masa kepada satu minit, dan serahkan seperti biasa;
Rekodkan masa penjanaan setiap teg
Jika peraturannya ialah hanya 4 teg boleh dijana dalam satu minit, yang kelima akan menggesa ralat
Sejurus sebelum menambah yang kelima, Bandingkan masa penjanaan yang pertama daripada empat yang terbaharu dengan masa semasa untuk melihat sama ada ia melebihi 60 saat Jika tidak, ralat akan dilaporkan.
Gunakan sesi untuk merekodkan dua nilai, satu ialah bilangan penyerahan $count dan satu lagi ialah masa penyerahan $time. ++$count==5 [Syarat 1] dikesan setiap kali ia diserahkan, time()-$time>=60 saat [Syarat 2]. cuma syaratnya dipenuhi 1 maka $count=0;$time=time();
Adalah disyorkan untuk menggunakan operasi cache redis