Mailchimp的“Captcha”验证如何工作?

时间:2014-02-26 16:24:55

标签: javascript jquery html html5

以下是我所指的代码片段:

<!-- real people should not fill this in and expect good things - do not remove this or risk form bot signups-->
  <div style="position: absolute; left: -5000px;">
    <input type="text" name="[IDENTIFYING CODE HERE]" value="">
  </div>

然后将表单发送到他们进行JavaScript(jQuery)验证的站点。

    <script type="text/javascript" src="http://downloads.mailchimp.com/js/jquery.mailcheck.min.js"></script>
<script type="text/javascript">
    $(document).ready(function(){
        try {
        var domains =['hp.com','hotmail.co.uk','yahoo.co.uk','yahoo.com.tw','yahoo.com.au','yahoo.com.mx','gmail.com','hotmail.com','yahoo.com','aol.com','comcast.net','msn.com','seznam.cz','sbcglobal.net','live.com','bellsouth.net','hotmail.fr','verizon.net','mail.ru','btinternet.com','cox.net','yahoo.com.br','bigpond.com','att.net','yahoo.fr','mac.com','ymail.com','googlemail.com','earthlink.net','xtra.co.nz','me.com','yahoo.gr','walla.com','yahoo.es','charter.net','shaw.ca','live.nl','yahoo.ca','orange.fr','optonline.net','gmx.de','wanadoo.fr','optusnet.com.au','rogers.com','web.de','ntlworld.com','juno.com','yahoo.com.sg','rocketmail.com','yandex.ru','yahoo.co.in','centrum.cz','live.co.uk','sympatico.ca','libero.it','walla.co.il','bigpond.net.au','yahoo.com.hk','ig.com.br','live.com.au','free.fr','sky.com','uol.com.br','abv.bg','live.fr','terra.com.br','hotmail.it','tiscali.co.uk','rediffmail.com','aim.com','blueyonder.co.uk','telus.net','bol.com.br','hotmail.es','email.cz','windowslive.com','talktalk.net','home.nl','t-online.de','yahoo.de','telenet.be','163.com','embarqmail.com','windstream.net','roadrunner.com','bluewin.ch','skynet.be','laposte.net','yahoo.it','qq.com','live.dk','planet.nl','hetnet.nl','gmx.net','mindspring.com','rambler.ru','iinet.net.au','eircom.net','yahoo.com.ar','wp.pl','mail.com','emmis.com','hotmail.de','lireo.com','gmx.at','ukr.net','zol.co.zw'];
        var tdomains = [];
        $('#MERGE0').on('blur', function() {
          $(this).mailcheck({
            domains: domains,
            topLevelDomains: tdomains,
            suggested: function(element, suggestion) {
                var msg = 'Hmm, did you mean '+suggestion.full+'?';
                if ( $('#MERGE0_mailcheck').length > 0 ){
                    $('#MERGE0_mailcheck').html(msg);
                } else {
                    element.after('<div id="MERGE0_mailcheck" class="errorText">'+msg+'</div>');
                }
            },
            empty: function(element) {
                if ( $('#MERGE0_mailcheck').length > 0 ){
                    $('#MERGE0_mailcheck').remove();
                }
              return;
            }
          });
        });
        } catch(e){ console.log(e); }
    });
</script>

在非专业人士的术语中,这是怎样的&#34;验证码&#34;工作?

什么阻止机器人识别并跳过该字段?

什么能阻止一个人意外地进入该领域并输入某些东西?

除非我遗漏了某些内容,否则它似乎不会非常有效,但它似乎有效吗?

1 个答案:

答案 0 :(得分:0)

  

是什么阻止机器人识别并跳过该字段?   什么能阻止一个人意外地进入该领域并输入某些东西?

没什么,有些人会。

然而,它将继续像任何其他蜜罐一样有效(这是蜜罐,而不是验证码)。没有一种垃圾邮件防范方法是垃圾邮件预防的最终解决方案。这只是一种可以而且应该与其他方法结合的方法。这种特殊方法可以防止机器人跳过表格(假设输入每次都有一个新名称),并强制机器人将该字段识别为蜜罐,以便成功完成表格。它应该对大多数蜘蛛垃圾邮件非常有效,但如果有人真的想用它来引发垃圾邮件,它就可以被打败。