Zurück zur Übersicht

Eine Solid.js-Anwendung mit CaptchaFox vor Bot-Angriffen schützen

Zuletzt aktualisiert am 6. Februar 2024

Eine Solid.js-Anwendung mit CaptchaFox vor Bot-Angriffen schützen

In diesem Artikel erklären wir, wie Sie das CaptchaFox-Widget in eine Solid.js-Anwendung integrieren. Mit unserer bereitgestellten Bibliothek können Sie Ihre Anwendung sicherer gestalten, indem Sie die Benutzer auffordern, vor dem Absenden von Formularen eine CAPTCHA-Prüfung durchzuführen.

Was ist Solid?

Solid ist ein recht neues JavaScript Framework zur Erstellung von Webanwendungen. Genau wie React verwendet es JSX und stellt ähnliche APIs bereit. Es zeichnet sich vorallem durch eine sehr gute Browserperformance und einfache Struktur aus. Das Framework setzt hierbei sehr stark auf feingranulare Reaktivität, wodurch ein virtueller DOM nicht nötig ist.

Schritt 1: Installation von CaptchaFox

Um loszulegen, müssen Sie das spezifische CaptchaFox-Paket mit Ihrem bevorzugten Paketmanager installieren. Öffnen Sie das Terminal in Ihrem Projekt und führen Sie den folgenden Befehl aus:

Terminal
npm install @captchafox/solid

Schritt 2: Erstellen eines Formulars

Als nächstes erstellen Sie ein Formular in Ihrer Anwendung. Sie können dies tun, indem Sie eine neue Komponente erstellen und die Formularelemente hinzufügen. Hier ist ein Beispiel für ein einfaches Formular:

ContactForm.tsx
function ContactForm() {
    return (
        <form>
            <label htmlFor="name">Name:</label>
            <input type="text" id="name" name="name" />

            <label htmlFor="email">Email:</label>
            <input type="email" id="email" name="email" />

            <button type="submit">Submit</button>
        </form>
    )
}

Dieses Formular enthält zwei Eingabefelder für den Namen und die E-Mail-Adresse des Benutzers sowie einen Button zum Absenden.

Schritt 3: Hinzufügen von CaptchaFox zum Formular

Nun, da Sie ein Formular haben, kann das CaptchaFox Widget hinzugefügt werden. Dazu importieren Sie die Komponente aus dem Paket @captchafox/solid und fügen sie zu Ihrem Formular hinzu. Folgender Code ist ein Beispiel, wie das Formular danach aussieht. Der Seitenschlüssel muss mit Ihrem Schlüssel aus dem Admin-Portal ersetzt werden.

ContactForm.tsx
import { CaptchaFox } from '@captchafox/solid'

function ContactForm() {
    return (
        <form>
            <label htmlFor="name">Name:</label>
            <input type="text" id="name" name="name" />

            <label htmlFor="email">Email:</label>
            <input type="email" id="email" name="email" />

            <CaptchaFox sitekey="SCHLÜSSEL" />

            <button type="submit">Submit</button>
        </form>
    )
}

Schritt 4: Validierung der Anfrage

Anschließend können Sie eine Methode hinzufügen, um mit dem Ergebnis des Captchas weiterzuarbeiten oder um zu überprüfen, ob die Verifizierung erfolgreich war.

ContactForm.tsx
import { CaptchaFox } from '@captchafox/solid'

function ContactForm() {

    const handleVerify = (token: string) => {
        // Ihre Business Logik
    }

    return (
        <form>
            <label htmlFor="name">Name:</label>
            <input type="text" id="name" name="name" />

            <label htmlFor="email">Email:</label>
            <input type="email" id="email" name="email" />

            <CaptchaFox sitekey="SCHLÜSSEL" onVerify={handleVerify}/>

            <button type="submit">Submit</button>
        </form>
    )
}

Zur Überprüfung muss der erhaltene Token in Ihrem Backend validieren werden, bevor Sie den Benutzer die Aktion ausführen lassen. Weitere Informationen über die API für die Überprüfung finden Sie in der Dokumentation.

Nächste Schritte

Sie haben nun erfolgreich CaptchaFox in Ihre Solid-Anwendung integriert!

Sie können den Code Ihren Anforderungen entsprechend anpassen und zusätzliche Formluare in ihrer Anwendung schützen.

Wenn Sie tiefer in die Intergration eintauchen wollen, können Sie die offizielle Dokumentation lesen.

Bots bekämpfen und Benutzerdaten schützen.

Geben Sie Betrügern und Spammern keine Chance und schützen Sie Ihre Webseite noch heute mit CaptchaFox.

CaptchaFox