Еще один способ «помочь» избежать мошенничества - ввести в форму хэш-код 1 раз, а затем проверить, действителен ли он, прежде чем подсчитывать голоса.
Например:
Когда вы создаете форму голосования, вы делаете случайный хеш, сохраняете его в базе данных и помещаете в form
как поле hidden
.
(возможно, вы захотите добавить поле даты в базу данных хэшей, чтобы вы могли очистить неиспользуемые хэши)
Затем, когда вы получите запрос POST
на голосование, вы можете проверить, находится ли предоставленный хэш в базе данных, и удалить его из базы данных, чтобы его нельзя было использовать снова.
МИНУСЫ:
Может загружать базу данных с высоким IO, если трафик на странице голосования высокий.
Невозможно кэшировать страницу в виде html плана, поэтому это создает дополнительную нагрузку на веб-приложение.