在登录的过程中,人机校验一般都是绕不过去的问题,这次就记录一个非常简便的人机校验——reCAPTCHA。
注册项目和apikey
https://www.google.com/recaptcha/about/
使用–onload 回调后显式渲染
<html>
<head>
<title>reCAPTCHA demo: Explicit render after an onload callback</title>
<script>
var onSubmit = function(token) {
console.log('success!');
};
var onloadCallback = function() {
// submit是元素的id,需要直接指定某个element
grecaptcha.render('submit', {
'sitekey' : 'your_site_key',
'callback' : onSubmit
});
};
</script>
</head>
<body>
<button id="submit"></button>
<script src="https://www.google.com/recaptcha/api.js?οnlοad=onloadCallback&render=explicit"
async defer>
</script>
</body>
</html>
此时点击button就可以在onSubmit获取token,将token发给后端校验就行
注意点
在配置reCAPTCHA时,需要配置限定域名,如果不配,token获取不到。