@pankratov_tolik

Как ограничить возможность нажатия на кнопку до одного раза?

Привет. Я делаю страницу своего портфолио, где будут показываться preview проектов описание и на каждом будет кнопка like и рядом колличество лайков. В проекте использую, vue(vuex,vue-router,vue-resource) и firebase. Превьюшки показываются с помощью v-for, данные хранятся в json-не, в firebase. Так вот, в этом же Джейсоне храню колличество лайков которое естественно инкерментируется при нажатии и посылается в firebase. Вопрос: как ограничить колличество нажатия на кнопку до одного раза? Аутентификации нет и не будет. Как на мой джуниорский ум, идеального решения без использования аутентификации - нет. По IP не вариант, потому как может быть один внешний IP в каких то сетях, поправьте если не прав.

Мне на ум приходит только local storage, хотя понятное дело что можно открыть другой браузер или incognito. Либо вместо аутентификации позволить лайкать только после ввода email. Вряд ли кому то захочется по 10 раз вписывать какие то символы ради того что бы положить мне бесплатный аккаунт firebase.

Какие варианты?
Спасибо
  • Вопрос задан
  • 81 просмотр
Пригласить эксперта
Ответы на вопрос 2
Stalker_RED
@Stalker_RED
При первом клике removeEventListener и disabled на кнопку.
Конечно это не помешает злоумышленнику отправить сотни лайков напрямую, из консоли браузера.
Ответ написан
Комментировать
inoise
@inoise
Solution Architect, AWS Certified, Serverless
Только аутентификация и только серверная валидация
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы