I'm getting incorrect-captcha-sol
error code sometime while using Google reCAPTCHA server side verification api.
I have integrated google recaptcha validation to some of my apis.
To do so, I pass recaptcha token on these api requests from client side and then verify it on server side by following server side validation of recaptcha.
I am getting recaptcha token by executing below code and pass this token to my api request header:
const getRecaptchaToken = () => {
return new Promise((resolve, reject) => {
try {
if (window.grecaptcha && typeof window.grecaptcha.execute === "function") {
grecaptchaExecute(window.grecaptcha.execute);
} else {
window.grecaptcha.ready(async () => {
grecaptchaExecute(window.grecaptcha.execute);
});
}
// grecaptcha execute action
async function grecaptchaExecute(ExecuteAction) {
const captchaToken = await ExecuteAction(
xxxxxx, // my recaptcha site key
{
action: "submit",
}
);
return resolve(captchaToken);
}
} catch (error) {
return reject(error);
}
});
};
Then, on server side I call:
`https://www.google.com/recaptcha/api/siteverify?secret=${secret_key}&response=${captchaToken}`;
Most of time it is working fine, but some of calls randomly fail and return incorrect-captcha-sol
error code.
Since it's happening randomly, I don't have a good idea when it is occurring and why. Also, I can't find the any details about this error code in the recaptcha documentations.
Any Ideas?