--- title: SDK Vue --- # SDK Vue Composant Vue 3 officiel pour le CAPTCHA CaptchaLa — publié sous [`@captcha-la/vue`](https://www.npmjs.com/package/@captcha-la/vue). ## Démo en ligne ::: tip 📦 [demo-v1.captcha.la/vue](https://demo-v1.captcha.la/vue/) — démo exécutable avec les quatre modes produit. Source : [Captcha-La/vue-example](https://github.com/Captcha-La/vue-example). ::: ## Installation ```bash npm install @captcha-la/vue # or yarn add @captcha-la/vue # or pnpm add @captcha-la/vue ``` Dépendance pair : `vue@^3.2.0`. ## Démarrage rapide ```vue ``` ## Props | Prop | Type | Valeur par défaut | Description | |------|------|---------|-------------| | `appKey` | `string` | *requis* | Clé d'application CaptchaLa | | `serverToken` | `string` | - | Token de challenge émis par le serveur, à usage unique. Requis lorsque l'application a `server_token_required=true`. | | `product` | `'popup' \| 'float' \| 'embed' \| 'bind'` | `'popup'` | Mode d'affichage | | `action` | `string` | `'default'` | Identifiant de l'action (par ex. `login`, `register`, `checkout`) | | `lang` | `string` | `'zh-CN'` | Code de langue (`zh-CN`, `en`, `ja`, …) | | `bindTo` | `string \| HTMLElement` | - | Sélecteur ou nœud d'élément auquel se lier (uniquement pour `product="bind"`) | ## Événements | Événement | Charge utile | Description | |-------|---------|-------------| | `success` | `{ token, type, action }` | Vérification réussie | | `error` | `error` | Vérification échouée | | `close` | — | CAPTCHA fermé | | `ready` | — | CAPTCHA prêt | ## Méthodes (via `ref`) ```vue ``` | Méthode | Description | |--------|-------------| | `verify()` | Déclenche la vérification | | `reset()` | Réinitialise l'état du CAPTCHA | | `destroy()` | Détruit l'instance | | `bindTo(selector)` | Lie à un élément (pour le mode `bind`) | | `setLang(lang)` | Change la langue à la volée | ## Production : mode `serverToken` Pour les flux à forte valeur (connexion, inscription, paiement), nous recommandons le **flux de token émis par le serveur**. Votre backend génère un `server_token` à usage unique (TTL de 5 minutes) via `POST /v1/server/challenge/issue` et le transmet au navigateur : ```vue ``` Consultez la [Référence de l'API](/fr/api-reference) pour le contrat backend complet. ## Liens - [npm](https://www.npmjs.com/package/@captcha-la/vue) · [GitHub](https://github.com/Captcha-La/vue) · [exemple](https://github.com/Captcha-La/vue-example) - [Vue d'ensemble du SDK Web](/fr/web-sdk) · [Référence de l'API](/fr/api-reference)