аутентификация с использованием только JavaScript + роботов - PullRequest
0 голосов
/ 12 сентября 2011

Я работаю с формой, которая использует Javascript только для аутентификации полей.Мне нужно ввести спам-фильтр.У меня вопрос.

  1. Должен ли я ввести серверный сценарий для решения проблем со спамом (дополнительная работа)
  2. Отключить отправку формы пользователем, если JavaScript отключен?
  3. Создайте отдельную форму для людей, которые отключили Javascript (например, для роботов)

Проблема возникла из-за спама.Как побочный вопрос. Как работают боты?Они просто отключают JavaScript .Это отчасти неубедительный вопрос.

То, как форма была закодирована, довольно необычно, что означает, что изменения кода для сценария PHP будут значительными, что эквивалентно разработке новой страницы.

Спасибо завперед.

Ответы [ 3 ]

1 голос
/ 12 сентября 2011

Большинство ботов работают, угадывая значения для вставки в поля формы на основе их атрибута name;например, значение email-esque будет вставлено в <input type="text" name="email"/>, а объявление для виагры будет вставлено в <textarea name="body" />

, тогда как запрет пользователей с отключенным JavaScript прекратится какой-то (самый?) Спам распространяется, вы также рискуете помешать вашим реальным пользователям использовать ваш веб-сайт;Вы хотите рискнуть?

Самый распространенный способ предотвращения спама - попросить пользователя заполнить CAPTCHA;бросить их трудно расшифровать изображение и попросить их написать в слове.reCaptcha используется на многих сайтах, однако я буду включать reCaptcha в формы только в качестве крайней меры.

Один из моих самых любимых способов предотвращения спама - вставка в форму поддельных, скрытых полей ввода (type="hidden) и присвойте им имена, такие как email, website и т. Д. Обычные пользователи не будут вводить значения для этих полей, поскольку они скрыты, но спам-боты могут .

0 голосов
/ 12 сентября 2011

Должен ли я ввести серверный сценарий для решения проблем со спамом (дополнительная работа)

Да

Отключить отправку формы пользователем, если JavaScript отключен?

Вы не можете.(Вы можете разместить несколько блоков, которые сделают его неудобным для отправки, но вы не можете контролировать, какие данные люди отправляют на ваш сервер.)

Создайте отдельную форму для людей, которые отключилиJavascript (например, для роботов)

Нет. Сборка на том, что работает

Как работают боты?

Они делают HTTP-запросы и обрабатывают ответы.

Они просто отключают JavaScript.

Они обычно работают на движках, которые неВо-первых, он не поддерживает JavaScript.

То, как форма была закодирована, довольно необычно, что означает, что изменения кода для сценария PHP будут значительными, что эквивалентно разработке новой страницы.

Звучит так, будто он находится в адском обслуживании и нуждается в рефакторинге для любых будущих изменений или отладки, которые могут понадобиться.

0 голосов
/ 12 сентября 2011

Вы можете работать с капчей, однако это не улучшает работу пользователя.

Хитрость, которую мне нравится использовать, - добавить имя поля, например, электронную почту, затем использовать css, чтобы скрыть его и проверить на стороне сервера, если значение все еще пусто.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...