2012-06-01 4 views
1

Мне было интересно, как настроить систему, в которой аутентифицированный пользователь мог бы отправить с помощью простого графического взаимодействия (кликание кнопки или около того) нереверсируемого запроса/сообщения на сервер из приложения или веб-страницы. Критически важно, чтобы не было возможности создать автоматизированную систему, которая заменяет взаимодействие пользователя с автоматизацией запроса, поскольку это полностью разрушит весь мой проект. Кроме того, поскольку это действие должно часто повторяться, оно не должно выполнять скучные вещи, такие как чапты или так далее.Как предотвратить автоматический запрос?

Примерочный пример: предположим, что веб-страница, показанная после входа в систему, отображает кнопку, которая отправляет серверу запрос. Как я могу быть уверен, что запрос был отправлен, потому что пользователь на самом деле нажал кнопку, и это был не какой-то бот, который подделал сообщение?

Можно ли даже проверить? Я уверен, что это так, и я совершенно уверен, что должна быть какая-то простая реализация, которую я пропускаю, и мне жаль, если это тривиальный вопрос. Кроме того, если решение скрывается (потому что я уже много искал!), Пожалуйста, укажите мне его.

Спасибо за внимание.

+1

Захват мыши, движущегося в javascript? – mellamokb

+1

Совсем нет. Это невозможно. – CodesInChaos

+1

Все, что основано на взаимодействии с пользователем, может быть написано с помощью JS таким образом, который будет неотличим от фактического пользователя. Ваш лучший выбор - это captcha .... извините. –

ответ

0

Вы можете использовать неграфический captcha, как простой вопрос.
Создайте простое добавление двух случайных чисел от 0 до 10.
Добавьте текстовое поле, чтобы запросить результат.
Результат очень легко найти (для человека) и очень быстро напечатать.

Пример:
Каков результат 7 + 5? Напишите свой результат здесь: [_]

Он должен блокировать роботов и очень молодых или очень глупых людей.

Смежные вопросы