Intégration CAPTCHA Axum
Intégrez TrustCaptcha dans un handler Axum avec quelques lignes de Rust. Stoppez le spam automatisé sur les connexions, inscriptions et formulaires de contact avec une instance TrustCaptcha partagée via le typed state d’Axum et un petit helper async. Hébergé dans l’UE, conforme RGPD et sans énigmes visuelles.
Démarrage rapide
Comment fonctionne l'intégration
1. Créer un CAPTCHA
Créez un compte utilisateur ou connectez-vous avec un compte existant. Ensuite, créez un nouveau CAPTCHA ou sélectionnez-en un existant. Si vous ne savez pas encore si TrustCaptcha vous convient, essayez notre service CAPTCHA sans risque pendant 14 jours gratuitement.
Sur la page d’aperçu du CAPTCHA, vous trouverez toutes les informations importantes, comme la clé de site et la clé de licence, et vous pouvez aussi y créer votre API key. Autorisez simplement vos sites web à utiliser votre CAPTCHA en les ajoutant à la liste des domaines autorisés dans les règles de sécurité du CAPTCHA.
2. Ajouter le widget CAPTCHA dans votre formulaire
Placez le widget TrustCaptcha dans le formulaire HTML servi par votre handler Axum. Le widget s’exécute en arrière-plan et ajoute un champ caché tc-verification-token lors de l’envoi, que axum::extract::Form désérialise dans votre struct.
<script type="module" src="https://cdn.trustcomponent.com/trustcaptcha/3.0.x/trustcaptcha.esm.min.js"></script>
<form method="post" action="/contact">
<input type="email" name="email" required>
<trustcaptcha-component sitekey="<your_site_key>"></trustcaptcha-component>
<button type="submit">Send</button>
</form>Le widget CAPTCHA s’affichera ensuite dans votre formulaire :
Besoin d’informations détaillées sur l’intégration du widget CAPTCHA ?
Pour la référence complète du widget — y compris thèmes, langues, design personnalisé et plus encore — veuillez consulter notre documentation.
Lire la documentation
3. Valider le jeton dans votre handler Axum
Dans votre handler Axum, récupérez le jeton de vérification depuis le formulaire, consultez le résultat via notre crate Rust et décidez si la requête doit être acceptée.
Commencez par installer notre crate Rust TrustCaptcha :
cargo add trustcaptcha@^3.0Validez ensuite le jeton dans votre handler Axum et agissez en fonction du résultat :
use axum::{extract::Form, http::StatusCode, response::IntoResponse};
use serde::Deserialize;
use trustcaptcha::trust_captcha::TrustCaptcha;
#[derive(Deserialize)]
struct ContactForm {
email: String,
#[serde(rename = "tc-verification-token")]
tc_verification_token: String,
}
async fn submit(Form(form): Form<ContactForm>) -> impl IntoResponse {
let trust_captcha = match TrustCaptcha::builder("<your_api_key>").build() {
Ok(tc) => tc,
Err(_) => return (StatusCode::INTERNAL_SERVER_ERROR, "CAPTCHA setup failed.").into_response(),
};
let result = match trust_captcha.get_verification_result(&form.tc_verification_token).await {
Ok(r) => r,
Err(_) => return (StatusCode::BAD_REQUEST, "CAPTCHA verification failed.").into_response(),
};
if !result.verification_passed || result.score > 0.5 {
return (StatusCode::BAD_REQUEST, "CAPTCHA verification failed.").into_response();
}
// CAPTCHA validé — traiter la requête
(StatusCode::OK, "Thanks!").into_response()
}Besoin d’informations détaillées sur l’intégration CAPTCHA Axum ?
Pour des instructions détaillées étape par étape — y compris une instance TrustCaptcha partagée via le typed state et un helper verify_token réutilisable — veuillez consulter notre documentation.
Lire la documentation
Un autre framework backend qu’Axum ?
Si vous utilisez un autre framework, choisissez la recette correspondante ici. Si votre framework n’est pas listé, vos développeurs peuvent intégrer la vérification eux-mêmes à l’aide de notre documentation ou contacter notre équipe support pour demander une intégration préconstruite.
4. Félicitations 🎉
Vous êtes maintenant protégé par TrustCaptcha — félicitations !
FAQs
Où dans une application Axum a lieu la vérification CAPTCHA ?
Comment partager une seule instance TrustCaptcha entre les handlers ?
Dois-je extraire la vérification CAPTCHA dans un extracteur Axum personnalisé ?
Le SDK Rust s’adapte-t-il au runtime Tokio d’Axum ?
TrustCaptcha bloque le spam et les bots, pas vos clients. Sans puzzle, conforme au RGPD, hébergé en UE.
Protégez votre application Axum avec TrustCaptcha en quelques étapes !
- Hébergé en UE & conforme RGPD
- Aucun puzzle
- Essai gratuit de 14 jours