欧美精品乱码99久久蜜桃,日韩精品亚洲人成在线,人妻无码一区二区三区免费,欧美日韩精品suv,青青草97国产精品免费观看

企業(yè)形象網(wǎng)站建設(shè)解決方案   |   集團公司網(wǎng)站建設(shè)解決方案   |    協(xié)會門戶網(wǎng)站建設(shè)解決方案
您所在位置:首頁 > 建站知識

網(wǎng)站開發(fā)

Website development

網(wǎng)站開發(fā)驗證碼防機器人策略

發(fā)布時間:2016-11-14 10:01:15

TAGS:網(wǎng)站開發(fā)

近,我們的客戶的網(wǎng)站之一,一直在處理大量的惡意僵尸注冊其電子郵件時事通訊。有處理BOT交通幾個常用的策略:5BM北京網(wǎng)站設(shè)計開發(fā),小程序開發(fā),公眾號,微信開發(fā)-云智互聯(lián)

  • 蜜罐:從用戶隱藏表單輸入,但可以看到它們的機器人,所以如果他們被填充,我們就知道它是由一個機器人訪問5BM北京網(wǎng)站設(shè)計開發(fā),小程序開發(fā),公眾號,微信開發(fā)-云智互聯(lián)

  • 確認電子郵件:用戶會收到一封電子郵件,并通過電子郵件發(fā)送的鏈接,以確認該郵件是有效的5BM北京網(wǎng)站設(shè)計開發(fā),小程序開發(fā),公眾號,微信開發(fā)-云智互聯(lián)

  • 驗證碼:某種謎/疑問,一個機器人將有麻煩的回答5BM北京網(wǎng)站設(shè)計開發(fā),小程序開發(fā),公眾號,微信開發(fā)-云智互聯(lián)

由于復(fù)雜性和機器人的體積,我們決定為這個網(wǎng)站優(yōu)雅的解決方案是使用一個驗證碼系統(tǒng)。但是,什么captcha系統(tǒng)?人機識別系統(tǒng)通常包括顯示用戶一個字的圖像,用戶必須鍵入出來的字。通常情況下,圖像的方式,一臺計算機將有一個艱難的時間識別它扭曲。5BM北京網(wǎng)站設(shè)計開發(fā),小程序開發(fā),公眾號,微信開發(fā)-云智互聯(lián)

5BM北京網(wǎng)站設(shè)計開發(fā),小程序開發(fā),公眾號,微信開發(fā)-云智互聯(lián)

5BM北京網(wǎng)站設(shè)計開發(fā),小程序開發(fā),公眾號,微信開發(fā)-云智互聯(lián)

不幸的是,我們已經(jīng)得到了一些在那里機器人比在本場比賽人類更加美好的地步,所以我們轉(zhuǎn)向谷歌的NoCaptcha的reCAPTCHA。5BM北京網(wǎng)站設(shè)計開發(fā),小程序開發(fā),公眾號,微信開發(fā)-云智互聯(lián)

對于大多數(shù)用戶來說,NoCaptcha驗證碼很簡單,用戶可以點擊一個復(fù)選框。5BM北京網(wǎng)站設(shè)計開發(fā),小程序開發(fā),公眾號,微信開發(fā)-云智互聯(lián)

5BM北京網(wǎng)站設(shè)計開發(fā),小程序開發(fā),公眾號,微信開發(fā)-云智互聯(lián)

5BM北京網(wǎng)站設(shè)計開發(fā),小程序開發(fā),公眾號,微信開發(fā)-云智互聯(lián)

谷歌的驗證碼使用IP地址,餅干,和鼠標移動,以確定該用戶是一個機器人。還有其他專有的策略,但谷歌有什么動力去釋放這些......因為它會破解驗證碼容易。5BM北京網(wǎng)站設(shè)計開發(fā),小程序開發(fā),公眾號,微信開發(fā)-云智互聯(lián)

如果谷歌不能從眼前的行為告訴我們,如果一個用戶是一個機器人與否,有時用戶會需要完成一個簡單的匹配測驗是這樣的:5BM北京網(wǎng)站設(shè)計開發(fā),小程序開發(fā),公眾號,微信開發(fā)-云智互聯(lián)

5BM北京網(wǎng)站設(shè)計開發(fā),小程序開發(fā),公眾號,微信開發(fā)-云智互聯(lián)

5BM北京網(wǎng)站設(shè)計開發(fā),小程序開發(fā),公眾號,微信開發(fā)-云智互聯(lián)

讓我們把它建成!5BM北京網(wǎng)站設(shè)計開發(fā),小程序開發(fā),公眾號,微信開發(fā)-云智互聯(lián)

先決條件

我們正在與一個標準工作船現(xiàn)場,并能夠通過一個JavaScript模塊,前端接口。驗證碼是很靈活的,所以這只是一種可能的實現(xiàn)。5BM北京網(wǎng)站設(shè)計開發(fā),小程序開發(fā),公眾號,微信開發(fā)-云智互聯(lián)

您還需要注冊你的網(wǎng)站與谷歌獲得一個站點密鑰和私鑰。測試地點密鑰和秘密密鑰可用于開發(fā)在這里。5BM北京網(wǎng)站設(shè)計開發(fā),小程序開發(fā),公眾號,微信開發(fā)-云智互聯(lián)

發(fā)展

首先,我們需要顯示在HTML中reCAPTCHA小工具:5BM北京網(wǎng)站設(shè)計開發(fā),小程序開發(fā),公眾號,微信開發(fā)-云智互聯(lián)

5BM北京網(wǎng)站設(shè)計開發(fā),小程序開發(fā),公眾號,微信開發(fā)-云智互聯(lián)

標記<form method="post" action=""><div id="recaptcha-widget"></div></form><script src="https://www.google.com/recaptcha/api.js?onload=onloadCallback&render=explicit" async defer></script><script type="text/javascript">
  var recaptcha;
  var onloadCallback = function(response) {
    recaptcha = grecaptcha.render('recaptcha-widget', {
      'sitekey' : 'sitekey_goes_here',
      'theme' : 'light',
      'callback' : recaptchaCallback    });
  };</script>

有相當多的事情怎么回事,讓我們打破它。5BM北京網(wǎng)站設(shè)計開發(fā),小程序開發(fā),公眾號,微信開發(fā)-云智互聯(lián)

第一行是我們的一個div容器的ReCaptcha部件將在接下來異步從谷歌加載必要的驗證碼數(shù)據(jù)的腳本可以看出形式。后,我們有一個腳本,實際上將呈現(xiàn)reCAPTCHA小工具。我們選擇其中的div小部件插入到'的reCAPTCHA小部件“。我們還包括了必要的驗證碼sitekey,定型選項(無論是亮或暗),并且當用戶完成驗證碼將執(zhí)行回調(diào)函數(shù)。5BM北京網(wǎng)站設(shè)計開發(fā),小程序開發(fā),公眾號,微信開發(fā)-云智互聯(lián)

現(xiàn)在的ReCaptcha能否正常顯示,讓我們構(gòu)建一個JavaScript模塊中的回調(diào)函數(shù):5BM北京網(wǎng)站設(shè)計開發(fā),小程序開發(fā),公眾號,微信開發(fā)-云智互聯(lián)

5BM北京網(wǎng)站設(shè)計開發(fā),小程序開發(fā),公眾號,微信開發(fā)-云智互聯(lián)

JAVASCRIPT的window.recaptchaCallback = function(recaptchaResponse){  };

該reCAPTCHA小工具呈現(xiàn)之前,此功能必須在初始化,如回調(diào)函數(shù)必須存在被束縛的ReCaptcha。此外,您還可以看到該函數(shù)屬于“窗口”到它,所以它可以在全球范圍內(nèi)進行訪問。5BM北京網(wǎng)站設(shè)計開發(fā),小程序開發(fā),公眾號,微信開發(fā)-云智互聯(lián)

當回調(diào)函數(shù)被調(diào)用時,它會通過一個變量(recaptchaResponse),這是當用戶完成驗證碼生成的唯一令牌。為了驗證此令牌是有效的,我們需要調(diào)用谷歌API來確認。讓我們通過這篇文章要求一個插件控制器:5BM北京網(wǎng)站設(shè)計開發(fā),小程序開發(fā),公眾號,微信開發(fā)-云智互聯(lián)

5BM北京網(wǎng)站設(shè)計開發(fā),小程序開發(fā),公眾號,微信開發(fā)-云智互聯(lián)

JAVASCRIPT的window.recaptchaCallback = function(recaptchaResponse){  
  $.post('/', {
    action: 'recaptchas/verify',
    response: recaptchaResponse  }, function(data, textStatus, jqXHR) {
  });};

如果你想知道為什么我們要發(fā)布'/',那是因為我們的路線是通過操作變量實際傳遞。這是一個特定的工藝,方法,javascript和一個工藝品插件控制器之間傳遞信息。現(xiàn)在將在Recaptchas控制器執(zhí)行actionVerify功能。5BM北京網(wǎng)站設(shè)計開發(fā),小程序開發(fā),公眾號,微信開發(fā)-云智互聯(lián)

里面我們的插件控制器,我們做一個簡單的post請求,發(fā)送了所有必要的信息:5BM北京網(wǎng)站設(shè)計開發(fā),小程序開發(fā),公眾號,微信開發(fā)-云智互聯(lián)

5BM北京網(wǎng)站設(shè)計開發(fā),小程序開發(fā),公眾號,微信開發(fā)-云智互聯(lián)

PHPpublic function actionVerify() {
    $recaptchaResponse = craft()->request->getParam('response');
    $secret = 'google_recaptcha_secret_key';
    $url = 'https://www.google.com/recaptcha/api/siteverify';
    $fields = array('secret' => $secret, 'response' => $recaptchaResponse);
    $fields_string = http_build_query($fields);
    $ch = curl_init();
    curl_setopt($ch,CURLOPT_URL,$url);
    curl_setopt($ch,CURLOPT_POST,count($fields));
    curl_setopt($ch,CURLOPT_POSTFIELDS,$fields_string);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    $result = curl_exec($ch);
    curl_close($ch);
    $json = json_decode($result, true);
    return $this->returnJson(array('success' => $json['success']));}

這是非常簡單的。我們正在建立一個POST請求谷歌的reCAPTCHA API。我們有兩個參數(shù),我們網(wǎng)站的密鑰和驗證碼生成的recaptchaResponse。然后到后期的響應(yīng)將是一個布爾值,如果recaptchaResponse是有效的。現(xiàn)在,讓我們解析響應(yīng)后面的模塊中:5BM北京網(wǎng)站設(shè)計開發(fā),小程序開發(fā),公眾號,微信開發(fā)-云智互聯(lián)

5BM北京網(wǎng)站設(shè)計開發(fā),小程序開發(fā),公眾號,微信開發(fā)-云智互聯(lián)

JAVASCRIPT的window.recaptchaCallback = function(recaptchaResponse){  
  $.post('/', {
    action: 'recaptchas/verify',
    response: recaptchaResponse  }, function(data, textStatus, jqXHR) {
    if (data['success']) {
      _submitEmailToList($form);
    }
  });};

如果響應(yīng)是成功的,現(xiàn)在我們調(diào)用一個函數(shù)來提交電子郵件電子報。它也可以是添加的方式來重設(shè)驗證碼是一個好主意,在情況下,用戶需要多次提交表單。我們只需添加一個簡單的函數(shù)if語句后:5BM北京網(wǎng)站設(shè)計開發(fā),小程序開發(fā),公眾號,微信開發(fā)-云智互聯(lián)

5BM北京網(wǎng)站設(shè)計開發(fā),小程序開發(fā),公眾號,微信開發(fā)-云智互聯(lián)

JAVASCRIPT的grecaptcha.reset(recaptcha);

后的想法

谷歌的NoCaptcha的reCAPTCHA是過濾掉討厭的機器人整齊的工具。我大的挫折就是他們?nèi)狈Φ腞eCaptcha框樣式選項。有兩種不同的尺寸選項和兩個顏色選項。除此之外,有沒有辦法改變驗證碼是什么樣子。幸運的是,這個盒子是很小的,可與大多數(shù)網(wǎng)站的設(shè)計希望搖擺。但總體而言,實施是不是太棘手,并在網(wǎng)站上的偉大工程。5BM北京網(wǎng)站設(shè)計開發(fā),小程序開發(fā),公眾號,微信開發(fā)-云智互聯(lián)


5BM北京網(wǎng)站設(shè)計開發(fā),小程序開發(fā),公眾號,微信開發(fā)-云智互聯(lián)

原創(chuàng)不易,未經(jīng)授權(quán),嚴禁轉(zhuǎn)載

原文地址:http://mpian.cn/i,72,6902,0.html

客戶評價

更多+
  • 感謝云智互聯(lián),系統(tǒng)提前完成,在整個項目周期內(nèi),云智互聯(lián)對待我們并不像是對待客戶,更像是朋友一樣,每一次,都能以專業(yè)的角度向我們提出更合理、更有效的解決方案,并快速、細致地完成我們的每一個需求,再次感謝以至誠之心做事的云智互聯(lián)團隊。

    潘濤

  • 我是東方龍馬集團,在云智家做了2個企業(yè)官網(wǎng),服務(wù)態(tài)度超級好。如果想做網(wǎng)站,選擇他家一定不后悔。性價比高,服務(wù)態(tài)度好。值得你的信賴!

    譚嬌

  • 技術(shù)好,設(shè)計精良,操作便利,很專業(yè)!配套的服務(wù)和后續(xù)的服務(wù)都很好,網(wǎng)站封面堪稱精品,運行方便,后臺操作的簡單。技術(shù)還會耐心教我,很好的云智互聯(lián)(北京)科技有限公司,建站很不錯的。

    陳曦

  • 不錯,價格比較合適,重點是響應(yīng)速度蠻快,有什么問題都會馬上給你解決,公司很滿意,因為他們都是針對每個項目建了相應(yīng)的討論組,有問題可以再里面提出,人員分工到位,解決問題很及時。

    張經(jīng)理

聯(lián)系方式

工作時間:09:30-18:30
咨詢電話:010-64758810
客服郵箱:net@cnlink.cc

合作伙伴

All Rights Reserved.©2010-2016 YZLINK.CN 京公網(wǎng)安備 110105019435 京ICP備14020656號
本網(wǎng)站設(shè)計已受版權(quán)保護,任何公司及個人不得復(fù)制,違者將依法追究責任,特此聲明。法律顧問:北京市輝瑞律師事務(wù)所。

嘿,我們微信溝通!

復(fù)制手機號