reCaptcha v2和v3都在同一页面上

时间:2018-11-07 06:57:30

标签: recaptcha captcha

据我了解,似乎可以在同一页面上同时使用v2和v3(请参见https://github.com/google/recaptcha/issues/279),但找不到任何示例:/

我已经拥有不可见的v2的HTML页面,首先,我想评估v3分数的准确性,而不会破坏当前的v2(v3仅用于测试目的)。我还想知道是否有可能使用v3并为低分呈现v2挑战。

有什么想法吗?

(对不起,我的英语不是我的母语;)

2 个答案:

答案 0 :(得分:1)

以下示例(由Anton Cherniavskyi编写)有效。

但是,我认为它仅适用于v2 invisible + v3,即:不能使用v2 checkbox + v3

<script src="https://www.google.com/recaptcha/api.js?onload=v2_onload"></script>
<script src="https://www.google.com/recaptcha/api.js?onload=v3_onload&render=V3_SITE_KEY"></script>
<div class="g-recaptcha" data-size="invisible" data-sitekey="V2_INVISIBLE_SITE_KEY" data-callback="v2_callback"></div>
<script type="text/javascript">
    function v2_onload() { console.log('v2 loaded'); }
    function v3_onload() { console.log('v3 loaded'); }
    function v2_callback(token) { console.log('v2 token: ' + token); }
    function v3_callback(token) { console.log('v3 token: ' + token); }

    // call these manually
    function test_v2() { grecaptcha.execute(); }
    function test_v3() { grecaptcha.execute(V3_SITE_KEY/*, {action: '...'}*/).then(v3_callback); }
</script>

答案 1 :(得分:0)

是的,这说明了如何:Can I run reCAPTCHA v2 and v3 on the same page?

与同一页面上的两个v3和一个v2复选框一起很好地工作。