API решения reCAPTCHA отличается от siteverify
Нет — эндпоинт Google siteverify не может выдать токен ответа reCAPTCHA. Он проверяет токен, предоставленный клиентом. Оценки Enterprise также оценивают существующий токен; ни один из этих эндпоинтов не генерирует его из ключа сайта.
На этой странице
Выберите API под свою задачу
| API | Что вы передаете | Что вы получаете |
|---|---|---|
| Google siteverify | Существующий токен ответа | Результат проверки |
| Оценки Google Enterprise | Существующий токен ответа | Оценка этого токена |
| Задачи solvethree | Имя хоста поддерживаемого сайта, действие и конфигурация прокси | Задача, готовый результат которой содержит токен решения |
В стандартном процессе Google reCAPTCHA v3 клиентский SDK создаёт токен ответа, а бэкенд владельца сайта проверяет его с помощью siteverify. В процессе Enterprise клиентский SDK создаёт токен, а бэкенд создаёт оценку.
Если вы добавляете проверку на собственный сайт, используйте соответствующий процесс Google. Если вам нужен сервис решения CAPTCHA для поддерживаемого целевого сайта, используйте API задач solvethree. Сервис решения предоставляет токен для проверки целевым сайтом, но не заменяет проверку на его стороне.
Как выглядит реальный запрос на решение CAPTCHA
Сначала убедитесь, что для целевого сайта есть активный профиль, доступный вашему рабочему пространству. Передача имени хоста и действия не создаёт профиль. Если это условие ещё не выполнено, воспользуйтесь руководством по настройке профиля сайта.
Создайте задачу с помощью POST /v1/tasks в API solvethree, указав Authorization: Bearer, а затем API-ключ рабочего пространства. Храните этот ключ на сервере.
{
"site": "accounts.example.com",
"action": "login",
"proxy": "http://user:[email protected]:8080",
"requestId": "example_login_001"
}Замените имя хоста, действие и прокси из примера значениями для вашего целевого запроса. site — это имя хоста, а не полный URL. Запросы reCAPTCHA требуют ровно одно из полей: proxy или proxyCandidates; не добавляйте type или url. В этом примере используется значение recaptchaType по умолчанию — enterprise-v3; шлюз также принимает v3.
Получите задачу с помощью GET /v1/tasks/:id. Продолжайте опрос, пока её статус — pending или solving. Только статус ready содержит пригодное для использования решение. Если статус изменится на failed, прекратите опрос и проверьте errorCode и error.
Не расходуйте токен Enterprise на тестовую оценку
В документации Google указано, что токены ответа Enterprise для сайтов действуют две минуты и могут быть оценены только один раз. Запрашивайте решение незадолго до защищённого запроса. Создание оценки только ради проверки работоспособности токена может израсходовать его до того, как им воспользуется целевой сайт.
Отправляйте целевому сайту solution.token, а не ID задачи. Используйте возвращённые параметры браузера userAgent и secChUa вместе с прокси, через который удалось решить CAPTCHA. Смена прокси или смешивание несвязанных заголовков браузера может привести к сбою последующего запроса.
Статус задачи ready означает, что решение доступно, а не что целевой сайт принял запрос вашего приложения. Определяйте, принят ли запрос, по ответу целевого сайта, а не по созданию или готовности задачи.
Источники и справочник API
Запустите первую задачу.
Начните с $5 на балансе рабочего пространства.