У меня есть бэкэнд, который генерирует подарочные коды, каждый из которых имеет определенное количество применений. Отдайте их блоггеру или кому-либо еще, и их читатели могут обменять код на рекламный предмет.
Я работаю над лучшим способом проверки правильности кодов без коллизий / дуплисов или чего-то в этом роде. Мне нужно 1) подтвердить код 2) собрать информацию о доставке
Мой первый черновик был
A) Проверьте код с помощью формы, если это хорошо, перейдите к вводу адреса. Когда вход получен, сохраните код и адрес / имя и т. Д.
Это терпит неудачу, потому что если в коде 75 использовалось 74 использования, 25 человек могли бы «подтвердить», но еще не ввести свой адрес, и мы получили бы более 75 действительных погашений.
Мое текущее решение больше похоже на:
B) Просто укажите код в качестве первого поля в форме для сбора информации, и, когда введен действительный код, измените его и проверьте в реальном времени по БД. Если код действителен, он показывает остальную часть формы, и эта запись кода «запрашивается» в течение получаса или чего-то еще. Если через полчаса нет записи в БД, она освобождается.
Это кажется довольно сложным, и мне интересно, нужно ли мне делать удушение против попыток ajax, чтобы убедиться, что люди не переборщили действительный код.
Безопасен ли этот метод, и / или есть какие-то явно очевидные шаблоны, которые я пропускаю для приложений такого типа?