Erste Schritte

Erste Schritte

Die Integration von CaptchaFox wird nur wenig Zeit in Anspruch nehmen. Führen Sie die folgenden Schritte aus, um das Widet zu Ihrer Anwendung hinzuzufügen.

Schlüssel erhalten

CaptchaFox-Portal öffnen

Erstellen Sie ein Konto (opens in a new tab) oder loggen Sie sich (opens in a new tab) auf dem CaptchaFox-Portal ein.

Seitenschlüssel kopieren

Navigieren Sie zur Registerkarte Seiten im Portal und erstellen Sie eine neue Seite. Kopieren Sie den in der Konfiguration aufgeführten Seitenschlüssel.

Geheimschlüssel kopieren

Gehen Sie im Portal auf die Registerkarte Organisation und kopieren Sie den Geheimschlüssel.

JavaScript-Tag integrieren

Um ein Captcha-Widget auf einer HTML-Seite mit CaptchaFox darzustellen, werden zwei Teile des clientseitigen Codes benötigt. Durch Nutzung unserer vorgefertigten Plugins und Bibliotheken wird dieser Prozess vereinfacht.

Wählen Sie die Art der Applikation aus, in die CaptchaFox eingebunden werden soll:

Manuelle Integration

Fügen Sie den Tag zu Ihrer HTML-Seite hinzu

Die Skript-Tags können innerhalb des head oder body Tags platziert werden.

<script async defer src="https://cdn.captchafox.com/api.js"></script>

Container-Element hinzufügen

Fügen Sie ein leeres HTML-Element an der Stelle ein, an der das CaptchaFox-Widget dargestellt werden soll. Dieses Element (z.B. ein <div>) benötigt die Klasse captchafox und das Attribut data-sitekey mit Ihrem zuvor kopierten sitekey.

<div class="captchafox" data-sitekey="IHR_SITEKEY"></div>

Nach einer erfolgreichen Captcha-Prüfung wird automatisch ein verstecktes Eingabefeld mit dem Antwort-Token hinzugefügt. Dieses Token wird dann in die Formulardaten aufgenommen, die an Ihren Server gesendet werden, wenn ein Benutzer das Formular abschickt, und kann auf der Serverseite mit dem POST-Parameter cf-captcha-response abgerufen werden.

Im Folgenden finden Sie ein Beispiel für eine einfache HTML-Seite mit einem Formular, das durch CaptchaFox geschützt ist:

<html>
  <head>
    <title>CaptchaFox Demo</title>
    <script async defer src="https://cdn.captchafox.com/api.js"></script>
  </head>
  <body>
    <form action="IHR_SERVER_ENDPUNKT" method="POST">
      <input type="text" name="email" placeholder="Email" />
      <input type="password" name="password" placeholder="Passwort" />
      <div class="captchafox" data-sitekey="IHR_SITEKEY"></div>
      <button type="submit">Abschicken</button>
    </form>
  </body>
</html>

Antwort-Token auf dem Server verifizieren

Nachdem Sie das Antwort-Token auf dem Server erhalten haben, müssen Sie mit dem API-Endpunkt /siteverify überprüfen, ob es echt und gültig ist. Einmal ausgestellte Token können nur für eine einzige Überprüfung verwendet werden und müssen innerhalb eines kurzen Zeitraums authentifiziert werden.

https://api.captchafox.com/siteverify

Der API-Endpunkt erwartet die folgenden Parameter unter Verwendung des Content-Typs application/x-www-form-urlencoded.

POST ParameterBeschreibung
secretDer Geheimschlüssel Ihrer Organisatioin
responseDer Antwort-Token vom Widget
sitekey(Optional) Sitekey, der für die Ausstellung des Tokens verwendet wurde
remoteIp(Optional) IP Adresse des Nutzers, der den Token einlösen möchte

Beispiel mit curl:

curl https://api.captchafox.com/siteverify \
  -X POST \
  -d "response=ANTWORT_TOKEN&secret=IHR_SECRET"

Verifizierungsantwort

Der API-Endpunkt antwortet mit einem JSON-Objekt, das Ihnen mitteilt, ob das CAPTCHA-Token gültig ist.

{
    "success": true|false, // Ob die Überprüfung erfolgreich war oder nicht
    "challenge_ts": string, // ISO-Zeitstempel der Herausforderung (yyyy-MM-dd'T'HH:mm:ssZZ). Nur bei Erfolg enthalten.
    "hostname": string, // Hostname der Seite, auf der die Herausforderung gelöst wurde. (Optional)
    "error-codes": [...], // Liste der Fehlercodes. Nur enthalten, wenn success "false" ist.
    "insights": {...} // Details über die Verifizierung. (Enterprise Pläne)
}
⚠️

Der Erhalt eines Statuscodes 200 von der API bedeutet nicht, dass die Überprüfung erfolgreich war. Verwenden Sie das zurückgegebene Feld success, um den Überprüfungsstatus zu bestimmen.

Fehlercodes

FehlercodeBeschreibung
missing-input-secretDer Geheimschlüssel fehlt.
invalid-input-secretDer Geheimschlüssel ist ungültig oder falsch formatiert.
missing-input-responseDer Antwort-Token fehlt.
invalid-input-responseDer Antwort-Token ist ungültig oder fehlerhaft.
bad-requestDie Anfrage ist ungültig oder fehlerhaft formuliert.
timeout-or-duplicateDie Anfrage ist nicht mehr gültig.

Wir bemühen uns um höchstmögliche Verfügbarkeit, dennoch können Ausfallzeiten oder Unterbrechungen nicht ausgeschlossen werden.
Im Falle eines kritischen Serverfehlers sollte der Nutzer dennoch in der Lage sein, die gewünschte Aktion durchzuführen. Wir empfehlen Ihnen, die Anfrage in Ihrem eigenen Code zu umgehen, wenn der Server-Statuscode größer als 200 ist und diese zu protokollieren.