Maison >développement back-end >Tutoriel Python >Comment puis-je désactiver l'échappement automatique dans Flask/Jinja2 pour afficher correctement le HTML ?

Comment puis-je désactiver l'échappement automatique dans Flask/Jinja2 pour afficher correctement le HTML ?

DDD
DDDoriginal
2024-12-15 08:31:13706parcourir

How Can I Disable Autoescaping in Flask/Jinja2 to Render HTML Correctly?

Désactivation de l'échappement automatique dans Flask/Jinja2

Lors de l'utilisation de la fonctionnalité render_template de Flask, le framework échappe par inadvertance aux caractères HTML, les transformant en entités HTML. Cela peut être problématique pour afficher le contenu HTML personnalisé comme prévu. Pour remédier à cela, Flask utilise le concept d'échappement automatique pour éviter les failles de sécurité potentielles.

Solution :

Pour désactiver l'échappement automatique et afficher correctement le contenu HTML, utilisez le filtre |safe dans le modèle. Ce filtre demande à Jinja2 de faire confiance aux données fournies, supprimant ainsi le processus d'échappement automatique.

Exemple :

{{ something|safe }}

Cependant, il est crucial de faire preuve de prudence lors de l'utilisation de |safe. Utilisez-le uniquement sur des données fiables, car le rendu de données non fiables sans échappement approprié introduit un risque de vulnérabilités de script intersite.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn