Documentation

Clé secrète

Ta clé API fonctionne dans le navigateur, où les domaines autorisés la protègent. Un serveur n'a pas de domaine à vérifier, donc le contenu que tu traduis sur un serveur, avec React SSR, Next.js ou Angular pre-rendering, utilise une clé secrète à la place.

Les clés secrètes commencent par p-. Garde le tien sur le serveur et ne l'insère jamais dans un code qui s'exécute dans le navigateur.

Créer une clé secrète

Ouvre la page de ton compte et clique sur Créer une clé secrète sous Ta clé secrète. La clé n'apparaît qu'une seule fois, alors copie-la tout de suite. Ensuite, seuls les quatre derniers caractères apparaissent sur la page du compte.

Tu n'as qu'une clé secrète à la fois. S'il fuit ou si tu la perds, clique sur Régénérer la clé secrète. L'ancienne clé cesse de fonctionner immédiatement.

Utilise-le sur ton serveur

Définit la clé comme variable d'environnement MAGIC_TRANSLATE_SECRET_KEY quel que soit l'endroit où ton application est affichée ou créée, par exemple dans les paramètres de ton fournisseur d'hébergement ou dans tes secrets d'identification.

MAGIC_TRANSLATE_SECRET_KEY=p-...

Sur un serveur, les clients Magic Translate envoient cette clé à la place de ta clé API. Tu n'as pas besoin de modifier de code. Tu peux aussi le transmettre explicitement :

import { setupT } from '@magic-translate/react-ssr';
export const translate = setupT({
secretKey: process.env.MAGIC_TRANSLATE_SECRET_KEY
});

Dans le navigateur, les clients n'envoient jamais de clé secrète, même si elle est passée sous le nom apiKey. Ils enregistrent une erreur à la place.

Les clés secrètes nécessitent @magic-translate/react-ssr 1.3.0 ou @magic-translate/angular 1.2.0 ou version ultérieure.

Quand tu en as besoin

Ta clé APIDemandes au serveur sans clé secrète
Domaines non autorisésContinue à travailler
A autorisé des domainesRenvoie l'erreur SECRET_KEY_REQUIRED

Les demandes qui envoient une clé secrète depuis un navigateur renvoient l'erreur SECRET_KEY_IN_BROWSER. Une clé secrète ignore tes domaines autorisés et fonctionne sur n'importe quel serveur.