Auf dieser Seite wird erläutert, wie Sie die Antwort eines Nutzers auf eine reCAPTCHA-Abfrage aus dem Back-End Ihrer Anwendung prüfen.
Für Webnutzer gibt es drei Möglichkeiten, das Antworttoken des Nutzers abzurufen:
g-recaptcha-response
POST-Parameter, wenn der Nutzer das Formular auf Ihrer Website absendetgrecaptcha.getResponse(opt_widget_id)
, nachdem der Nutzer die reCAPTCHA-Aufgabe abgeschlossen hat- Als Stringargument für die Callback-Funktion, wenn
data-callback
entweder img-recaptcha
-Tag-Attribut oder im Callback-Parameter in dergrecaptcha.render
-Methode angegeben wird
Nutzer von Android-Bibliotheken können die Methode SafetyNetApi.RecaptchaTokenResult.getTokenResult() aufrufen, um ein Antworttoken abzurufen, wenn der Status erfolgreich zurückgegeben wird.
Token-Einschränkungen
Jedes reCAPTCHA-Nutzerantworttoken ist zwei Minuten lang gültig und kann nur einmal bestätigt werden, um Angriffe auf die Wiederholung zu vermeiden. Wenn Sie ein neues Token benötigen, können Sie die reCAPTCHA-Bestätigung noch einmal ausführen.
Nachdem Sie das Antworttoken erhalten haben, müssen Sie es innerhalb von zwei Minuten mit reCAPTCHA bestätigen. Damit prüfen Sie, ob das Token gültig ist.
API-Anfrage
URL: https://www.google.com/recaptcha/api/siteverify METHODE: POST
POST-Parameter | Beschreibung |
---|---|
Secret | Erforderlich. Der gemeinsame Schlüssel zwischen Ihrer Website und reCAPTCHA. |
Antwort | Erforderlich. Das Token für die Nutzerantwort, das über die clientseitige reCAPTCHA-Integration auf deiner Website bereitgestellt wird. |
Remoteip | Optional. Die IP-Adresse des Nutzers. |
API-Antwort
Die Antwort ist ein JSON-Objekt:
{
"success": true|false,
"challenge_ts": timestamp, // timestamp of the challenge load (ISO format yyyy-MM-dd'T'HH:mm:ssZZ)
"hostname": string, // the hostname of the site where the reCAPTCHA was solved
"error-codes": [...] // optional
}
Für reCAPTCHA Android:
{
"success": true|false,
"challenge_ts": timestamp, // timestamp of the challenge load (ISO format yyyy-MM-dd'T'HH:mm:ssZZ)
"apk_package_name": string, // the package name of the app where the reCAPTCHA was solved
"error-codes": [...] // optional
}
Fehlercode-Referenz
Fehlercode | Beschreibung |
---|---|
Fehlendes Eingabe-Secret | Der Secret-Parameter fehlt. |
Ungültiger Eingabeschlüssel | Der geheime Parameter ist ungültig oder fehlerhaft. |
Fehlende-Eingabeantwort | Der Antwortparameter fehlt. |
ungültige Eingabeeingabe | Der Antwortparameter ist ungültig oder fehlerhaft. |
fehlerhafte Anfrage | Die Anfrage ist ungültig oder fehlerhaft. |
Zeitüberschreitung oder Duplikat | Die Antwort ist nicht mehr gültig: Entweder ist sie zu alt oder wurde bereits verwendet. |