javascript - Apabila mendaftar, pengguna yang sama mendaftar beberapa kali, dan beberapa keping data yang sama muncul dalam pangkalan data Latar belakang telah disahkan, dan js bahagian hadapan juga mengehadkan penyerahan sekali setiap dua saat, tetapi beberapa keping data masih. muncul.
世界只因有你
2017-06-30 09:52:16
Apabila mendaftar, pengguna yang sama mendaftar beberapa kali, dan beberapa keping data yang sama muncul dalam pangkalan data Latar belakang telah disahkan, dan js bahagian hadapan juga mengehadkan penyerahan sekali setiap dua saat, tetapi beberapa keping data masih muncul.
Bahagian hadapan boleh menetapkan butang pendaftaran boleh diklik apabila memasuki halaman Apabila mengklik untuk menghantar permintaan pendaftaran, butang pendaftaran ditetapkan untuk tidak boleh diklik apabila permintaan kembali dan pendaftaran gagal, butang itu ditetapkan supaya boleh diklik.
Gunakan indeks unik sebagai had dalam pangkalan data
Saya tidak tahu jika anda menggunakan
debouce
还是throttle
untuk mengehadkan penyerahan kepada dua saatPendekatan yang lebih baik adalah dengan mengklik Daftar untuk melumpuhkan butang, tunggu permintaan kembali, dan kemudian dayakan butang dalam fungsi panggil balik Ingat untuk mendayakan butang Daftar dalam panggilan balik yang melaporkan ralat
Medan pangkalan data belakang juga mesti diindeks secara unik
Pengesahan sisi pelayan memerlukan pertimbangan keunikan; lumpuhkan klik selepas mengklik pada butang bahagian hadapan, tunggu pelayan kembali dan nyahsekat klik, atau laksanakannya melalui tamat masa
Pendaftaran memerlukan pengesahan unik
Pangkalan data serta nama pengguna pengesahan unik kunci utama
Walaupun penyelesaian melumpuhkan butang pada bahagian hadapan juga diperlukan, ia hanya menghalang pengguna biasa daripada mengklik berbilang kali dan tidak boleh menghalang 'pengguna' bukan pelayar
Tidak kira berapa banyak permintaan berulang yang diterima pelayan, ia mesti diproses oleh backend
Tujuan Pengguna yang sama hanya boleh mendaftar sekali, rujuk jawapan lain, kunci utama
Rujuk artikel saya Bagaimana untuk menghalang pelanggan daripada menghantar permintaan berulang dalam projek web