Сокращение спама простой и канонической формы: проверка JavaScript?

Как будто вы пытаетесь получить доступ к объекту, который является null. Рассмотрим ниже пример:

TypeA objA;

. В это время вы только что объявили этот объект, но не инициализировали или не инициализировали. И всякий раз, когда вы пытаетесь получить доступ к каким-либо свойствам или методам в нем, он будет генерировать NullPointerException, что имеет смысл.

См. Также этот пример:

String a = null;
System.out.println(a.toString()); // NullPointerException will be thrown
5
задан rjzii 9 September 2008 в 17:10
поделиться

6 ответов

Существует все еще большое количество людей, которые работают с выключенным JavaScript.

С другой стороны, я имел достойный успех с останавливающимся спамом формы с помощью CSS. В основном включайте поле ввода и маркировку, которая скрыта с помощью CSS (display: none;) и когда-то отправленный, проверьте, было ли что-нибудь введено в поле.

Я обычно маркирую поле как спам-фильтр с инструкцией не поместить что-либо в поле, но все более новые браузеры правильно скроют блок.

reCAPTCHA также удивительно легко реализовать.

8
ответ дан 13 December 2019 в 05:45
поделиться

проверьте http://kahi.cz/wordpress/ravens-antispam-plugin/ на хороший ответ

если вставляет

<noscript><p><label for="websiteurl99f">Please type "e73053": </label><input type="text" name="websiteurl99f" id="websiteurl99f" /></p></noscript>
        <script type="text/javascript">/* <![CDATA[ */ document.write('<div><input type="hidden" name="websiteurl99f" value="e' + '73053" \/><\/div>'); /* ]]> */</script>

таким образом, пользователи JavaScript видят, что ничто, не js пользователи просто не вводит, одним словом,

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

2
ответ дан 13 December 2019 в 05:45
поделиться

Вы могли проверить - имеют JavaScript, который заполняет скрытое поле формы с определенным значением после загрузок страницы. Затем когда страница отправит назад на сервер, проверьте что скрытое поле формы математическое ожидание. Если это не там, который означает, что JavaScript не выполнился.

Относительно того, необходимо ли принять, это - спам, другая история в целом и та, которая не имеет никакого определенного ответа, действительно. У Вас мог просто быть a <noscript> отметьте и имейте его, указывают пользователю, что их представление не возьмет, если они не включат JavaScript.

После того как у Вас есть выполнение JavaScript, однако, спаммеры будут просто использовать другое обходное решение для этого.:)

1
ответ дан 13 December 2019 в 05:45
поделиться

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

Особенно эффективный, если Вы маркируете/называете поле чем-то вроде URL или веб-сайта.

1
ответ дан 13 December 2019 в 05:45
поделиться

Я не могу помнить, где я видел этот метод, но ботам спама нравится заполнять формы. Вы рассмотрели помещение поля формы, которое скрыто с JavaScript (и говорит, не заполняют это поле, если у пользователя нет JavaScript). Таким образом, если что-то заполняет это поле, можно проигнорировать его как спам.

0
ответ дан 13 December 2019 в 05:45
поделиться

Тебе повезло с этим? Я думаю, что в некоторых текстовых браузерах реализована базовая поддержка JavaScript, так что, может быть, у спам-ботов тоже есть?

В противном случае я рассматриваю возможность использования капчи для пользователей без JavaScript и некоторой автоматической проверки JavaScript для других пользователей.

0
ответ дан 13 December 2019 в 05:45
поделиться
Другие вопросы по тегам:

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