0

私は登録フォームを持っており、DB で一意のメール列を既に設定しているため、ユーザーが使用済みのメール アドレスで登録した場合に許可される重複メールはありません。

私の問題は、ユーザーが新しい電子メールで登録し (DB に no を意味する)、クリックが速すぎるかどうかです。最初の送信リクエストは DB への挿入に成功し、「メールが利用できないか使用されていません」というエラー メッセージを返します。

ユーザーのクリックが速すぎる場合、2 番目または残りの要求を防ぐにはどうすればよいですか?

注、無効化ボタンのように、クライアント側ではなくサーバー側で防止する必要があります

4

1 に答える 1

0

登録が成功したら、いくつかのキー値と時間でセッションを設定します。そのため、登録リクエストがサーバーに届いたら、同じセッションで短期間に成功した登録がすでにあるかどうかを確認します。その場合は、登録プロセスに進まず、最初のリクエストで表示される成功メッセージを表示してください。

検証エラーが発生した場合、フォームを再度検証しても問題はないため、何もする必要はありません。

注: 一度クリックした送信ボタンを無効にしてこれを実装した場合は、最も簡単な解決策になります。

于 2012-07-16T08:57:37.877 に答える