Lorsque j'ai essayé d'afficher mes données sous forme de texte HTML, il s'est affiché au format HTML, mais lorsque j'ai actualisé la page, le message d'erreur suivant s'affiche:
[$ sce: unsafe] Tentative d'utilisation d'une valeur non sécurisée dans un contexte sécurisé.
Voici mon AngularJS code:
data.attributes.task_name = $sce.trustAsHtml(data.attributes.task_name);
HTML
<span ng-bind-html="taskdata.attributes.task_name" data-html="true" title="{{reminder.attributes.message}}"></span>
De la documentation angulaire :
La valeur fournie pour une utilisation dans un contexte spécifique n'a pas été jugée sûre/fiable pour une utilisation.
AngularJS Le mode échappement strict contextuel (SCE) (activé par défaut), nécessite des liaisons dans certains contextes pour générer une valeur approuvée comme étant sans danger pour un tel contexte. (Par exemple, le chargement d’un modèle AngularJS à partir d’une URL nécessite que l’URL soit considérée comme sûre pour le chargement des ressources.)
Cela aide à prévenir XSS et d’autres problèmes de sécurité. Lire la suite sur - Échappement contextuel strict (SCE)
Vous voudrez peut-être inclure le module
ngSanitize
pour utiliser le nettoyage automatique.
Vous devez inclure ngSanitize
:
Chargez-le sur index.html :
<script src="lib/angular/angular-sanitize.min.js"></script>
Injectez-le en tant que dépendance dans votre app.js :
angular.module('myApp', ['...', 'ngSanitize']);