据我了解,似乎可以在同一页面上同时使用 v2 和 v3(请参阅https://github.com/google/recaptcha/issues/279),但找不到任何示例:/
我已经有了带有不可见 v2 的 HTML 页面,首先,我想在不破坏当前 v2 的情况下评估 v3 分数的准确性(v3 仅用于测试目的)。我还想知道是否可以使用 v3 和渲染 v2 挑战来获得低分。
任何的想法 ?
(对不起,我的英语不是我的母语;)
以下示例(由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>
Run Code Online (Sandbox Code Playgroud)