Passer au contenu principal
CustomizedConsent
Example
// How to use the CustomizedConsent screen SDK:
import CustomizedConsent from '@auth0/auth0-acul-js/customized-consent';

// Instantiate the manager for the customized consent screen
const consentManager = new CustomizedConsent();

// Accessing screen data
const clientName = consentManager.client.name;
const userEmail = consentManager.user.email;
const requestedScopes = consentManager.screen.scopes;
const authorizationDetails = consentManager.screen.authorizationDetails;

console.log(`${clientName} demande le consentement de ${userEmail}.`);
console.log("Portées demandées :", requestedScopes);
console.log("Détails d'autorisation :", authorizationDetails);

// Accessing transaction errors from a previous attempt
const transactionErrors = consentManager.transaction.errors;
if (transactionErrors && transactionErrors.length > 0) {
  transactionErrors.forEach(error => {
    console.error(`Error: ${error.message}`);
    // Display these errors to the user.
  });
}

// Example of handling consent acceptance
async function onAcceptConsent() {
  try {
    await consentManager.accept();
    // On success, Auth0 will typically redirect.
  } catch (e) {
    console.error('Failed to accept consent:', e);
  }
}

// Example of handling consent denial
async function onDenyConsent() {
  try {
    await consentManager.deny({ denial_reason: "user_declined" });
    // On success, Auth0 will typically redirect.
  } catch (e) {
    console.error('Failed to deny consent:', e);
  }
}

Constructeurs

Crée une instance du gestionnaire d’écran CustomizedConsent. Le constructeur initialise le BaseContext et configure la propriété screen avec une instance de ScreenOverride adaptée à l’écran de consentement personnalisé.

Exceptions

Générée si le contexte Universal Login n’est pas disponible ou si le nom de l’écran actuel dans le contexte ne correspond pas à CustomizedConsent.screenIdentifier.

Propriétés

branding
client
organization
prompt
screen
Contient les données et propriétés spécifiques à l’écran « Customized Consent », traitées par ScreenOverride. Cela inclut scopes et authorizationDetails.
tenant
transaction
untrustedData
user
screenIdentifier
string
Identifiant unique de l’écran « Customized Consent ». Cette propriété statique est utilisée par le BaseContext du SDK pour s’assurer que la classe est instanciée dans le bon contexte d’écran.

Méthodes

accept
Promise<void>
Soumet la décision de l’utilisateur d’accepter (accorder) les permissions et les détails d’autorisation demandés. Cette méthode prépare et envoie les données de formulaire au point de terminaison /u/customized-consent?state=<transaction_state> avec action: "accept". Le paramètre state de la transaction est automatiquement inclus à la fois dans le paramètre de requête de l’URL et dans le corps du formulaire.Une promesse qui se résout une fois que l’envoi du formulaire est initié. En général, un envoi réussi entraîne une redirection côté serveur.

Lève

Lève une erreur si FormHandler rencontre un problème irrécupérable pendant l’envoi (p. ex., une erreur réseau). Les erreurs de validation côté serveur provenant d’Auth0 (comme “invalid_request”) ne sont pas levées comme erreurs JavaScript, mais sont mises à disposition dans this.transaction.errors après l’opération.
deny
Promise<void>
Soumet la décision de l’utilisateur de refuser (rejeter) les permissions et les détails d’autorisation demandés. Cette méthode prépare et envoie les données de formulaire au point de terminaison /u/customized-consent?state=<transaction_state> avec action: "deny". Le paramètre state de la transaction est automatiquement inclus à la fois dans le paramètre de requête de l’URL et dans le corps du formulaire.Une promesse qui se résout une fois que l’envoi du formulaire est initié. Un envoi réussi entraîne généralement une redirection côté serveur.

Lève

Lève une erreur si FormHandler rencontre un problème (p. ex., une erreur réseau). Les erreurs de validation côté serveur sont reflétées dans this.transaction.errors.
getErrors
Récupère le tableau d’erreurs de la transaction à partir du contexte, ou un tableau vide s’il n’en existe aucune.Un tableau d’objets d’erreur provenant du contexte de la transaction.