Resolva problemas de integração do reCAPTCHA

Este documento lista problemas comuns de integração do reCAPTCHA que os programadores podem encontrar quando usam o reCAPTCHA no respetivo ambiente.

Chave do site inválida

Se vir o erro Invalid site key, a chave do site do reCAPTCHA já não é válida. Crie uma nova chave e instale-a nas suas páginas Web.

Falha na migração de chaves

As chaves do site podem não ser migradas num dos seguintes cenários:

  • Excedeu o número de projetos que a sua organização ou pode criar.

    Para resolver este problema, pode voltar a usar um projeto existente, pedir um aumento da quota de criação de projetos ou aguardar a conclusão da migração automática.

  • A sua organização do Workspace restringiu a criação de novos Google Cloud projetos.

    Para ativar o Google Cloud serviço na consola do administrador Google, contacte o seu administrador. Para mais informações, consulte o artigo Ative Google Cloud ou desative para os utilizadores.

SecurityError: blocked a frame with origin "https://www.google.com" from accessing a frame with origin "&ltyour domain&gt"

Normalmente, isto ocorre se o elemento HTML do widget reCAPTCHA for removido programaticamente algum tempo depois de o utilizador final clicar na caixa de verificação. Recomendamos que use a função JavaScript grecaptcha.enterprise.reset() para repor o widget reCAPTCHA.

Localhost não está na lista de domínios suportados

Os domínios localhost não são suportados por predefinição. Se quiser continuar a suportá-los para desenvolvimento, pode adicioná-los à lista de domínios suportados para a chave do site. Aceda à Google Cloud consola para atualizar a sua lista de domínios suportados. Recomendamos que use chaves separadas para o desenvolvimento e a produção, e que permita apenas o localhost na chave do site de desenvolvimento.

O reCAPTCHA devolveu BROWSER_ERROR ao criar uma avaliação

Os tokens BROWSER_ERROR ocorrem quando o script do reCAPTCHA não consegue realizar uma operação execute. Na maioria dos casos, isto deve-se a uma falha ou um limite de tempo da rede do lado do cliente. Tem de tentar novamente execute() através do JavaScript.