Google Recaptcha未以Formik / Netlify形式显示

问题描述 投票:1回答:1

我正在尝试将Google Recaptcha添加到我的Gatsby表单中,但看不到它。在控制台中看到以下错误:“ reCAPTCHA找不到用户提供的功能:onloadCallback”

我已经按照Netlify上的说明设置了自定义验证码:https://www.netlify.com/docs/form-handling/

但是,这对我没有用。我看不到Recaptcha。

以我的形式,我有:

  1. 在表单标签中:'data-netlify-recaptcha = true“
  2. 我具有Google文档中指定的div:
   <div className="g-recaptcha" data-sitekey={siteKey}
                  data-theme="dark"></div>
  1. 我已经在我的gatsby-config.js中安装了gatsby-plugin-recaptcha,如下所示:
   {
   resolve: `gatsby-plugin-recaptcha`,
     options: {
       async: true,
       defer: false,
       args: `?onload=onloadCallback&render=explicit`,
     }
  },
  1. 我通过使用Formik作为POST提交来处理提交:
  fetch("/", {
              method: "POST",
              headers: { 'Content-Type': "application/x-www-form-urlencoded"},
              body: encode({"form-name": "contact", ...values}),
          })
          .then(() => alert("Your form has been received."));

我没看到我在做什么错。如何显示验证码并使其正常工作?

recaptcha netlify formik
1个回答
0
投票

您确定您的问题是onloadCallback函数吗?我有同一个,我认为是因为由于某种原因netlify找不到我的站点密钥

© www.soinside.com 2019 - 2024. All rights reserved.