Skip to main content
Este artigo apresentará uma descrição da integração da API de reconhecimento do protocolo Recaptcha3, que permite aos usuários validar sem precisar reconhecer e clicar nas imagens do captcha do Recaptcha3, bastando enviar a Chave do Site para realizar a decodificação automática em segundo plano e completar a validação.

Processo de Solicitação

Para usar a API de reconhecimento do protocolo Recaptcha3, primeiro acesse o Painel de Controle da Ace Data Cloud para obter seu Token de API, que deve ser guardado para uso futuro. Se você ainda não estiver logado ou registrado, será redirecionado automaticamente para a página de login, onde será convidado a se registrar e logar; após a conclusão, você será redirecionado de volta para a página atual. Um Token de API é suficiente para acessar todos os serviços da plataforma, não sendo necessário solicitar um para cada serviço individualmente. A primeira solicitação oferece um crédito gratuito, permitindo uma experiência sem custo; quando o crédito estiver baixo, você pode recarregar o saldo geral no painel de controle.
📘 Documentação Completa: API de Reconhecimento do Protocolo Recaptcha3 →

Uso Básico

Primeiro, é importante entender a forma básica de uso. Comparado ao Recaptcha2, precisamos passar um parâmetro adicional page_action, que deve ser obtido no código. A URL de demonstração da velocidade da rede é: https://recaptcha-demo.appspot.com/recaptcha-v3-request-scores.php, abaixo está uma forma de obtê-lo:

Método Rápido:

Abra o f12 e, em seguida, na página de Elementos, pesquise por .execute(. Na área do quadro vermelho, podemos ver o parâmetro action, e ao lado do execute, há uma sequência de caracteres, que também é o conteúdo necessário a seguir, conforme mostrado na imagem abaixo.

Em seguida, você também precisa inserir a URL do site que precisa processar o captcha, para obter o resultado processado. Primeiro, é necessário passar um campo website_url, e por fim, você precisa inserir o parâmetro website_key, que pode ser obtido acima, também é uma sequência de caracteres após o execute. Agora podemos preencher os conteúdos correspondentes na interface, como mostrado na imagem:

Podemos ver que aqui configuramos os Cabeçalhos da Solicitação, incluindo:
  • accept: o formato de resposta desejado, aqui preenchido como application/json, ou seja, formato JSON.
  • authorization: a chave para chamar a API, que pode ser selecionada diretamente após a solicitação.
Além disso, configuramos o Corpo da Solicitação, incluindo:
  • page_action: deve ser obtido no código do site do captcha.
  • website_url: a URL do site que precisa processar o captcha.
  • website_key: o identificador da chave do site no Recaptcha3.
Após a seleção, podemos notar que o código correspondente também foi gerado à direita, como mostrado na imagem:

Clique no botão “Try” para realizar o teste, como mostrado na imagem acima, e aqui obtivemos o seguinte resultado:
Os resultados retornados têm vários campos, conforme descrito abaixo:
  • token, o resultado da verificação após o processamento da tarefa Recaptcha3.
  • started_at, finished_at: o tempo de início e término do processamento desta solicitação, timestamp Unix (segundos, ponto flutuante).
  • elapsed: o tempo total gasto para este processamento (segundos).
Podemos ver que obtivemos o resultado da verificação do Recaptcha3, que pode ser usado para simular uma submissão ao site de destino via POST ou GET, sendo de uso único e com validade de 120s, recomendando-se o uso dentro de 60s. Abaixo, será apresentada uma breve descrição de uma maneira de enviar o token gerado ao site de destino: Chamada do código correspondente à verificação do token em Python:
Portanto, podemos obter o resultado:
可以看到,其中 success 表示此处验证的处理结果,所有我们成功通过Recaptcha3验证码的验证。 另外如果想生成对应的对接代码,可以直接复制生成,例如 CURL 的代码如下:
Python 的对接代码如下:

Modo Assíncrono (async)

默认情况下 API 是同步阻塞的:一次请求会一直等待,直到 token 处理完成才返回。如果你在做多打码器轮换(multi-solver rotation),希望「提交任务后立即拿到 task_id,先去调度其他打码器,稍后再回来读取结果」,可以在请求体中传入 async: true 传入 async: true 后,接口会立即返回一个 task_id,而不会阻塞等待:
如需主动查看进度,可使用该 task_id 查询 POST /captcha/tasks(建议每 3~5 秒一次)。本接口不会触发或推进任务处理;即使不查询、断网或退出客户端,服务器仍会继续处理:
处理中会返回 status: processing
处理完成会返回 status: ready 和 token:
计费说明:异步模式下,创建任务和读取「处理中」状态都不计费;客户端首次读取成功结果时计费一次(与现有行为及同步模式价格一致)。服务器会自主推进任务,但不会因为后台先完成就提前扣费。任务在 120 秒内未成功会终止为 HTTP 504 timeout,不计费。/captcha/tasks 不负责推进任务。

错误处理

在调用 API 时,如果遇到错误,API 会返回相应的错误代码和信息。例如:
  • 400 token_mismatched:Bad request, possibly due to missing or invalid parameters.
  • 400 api_not_implemented:Bad request, possibly due to missing or invalid parameters.
  • 401 invalid_token:Unauthorized, invalid or missing authorization token.
  • 429 too_many_requests:Too many requests, you have exceeded the rate limit.
  • 500 api_error:Internal server error, something went wrong on the server.

错误响应示例

结论

通过本文档,您已经了解了如何使用 Recaptcha3 协议识别 API 让用户无需识别和点选 Recaptcha3 验证码图片,仅需通过提交 Website Key 即可实现后台自动解码,完成验证。希望本文档能帮助您更好地对接和使用该 API。如有任何问题,请随时联系我们的技术支持团队。