Analyse du JSON « détendu » sans évaluation risquée
JSON, un format d'échange de données largement utilisé, nécessite une syntaxe stricte avec des clés entre guillemets. Cependant, certaines applications peuvent rencontrer du JSON « détendu » avec des clés non citées. L'analyse de ces données à l'aide de eval est déconseillée en raison des risques de sécurité.
Éviter Evil Eval
Une alternative à eval est une approche basée sur les expressions régulières qui nettoie le JSON avant l'analyse. . Cette méthode analyse la chaîne JSON et remplace toutes les clés non citées par des clés citées, garantissant ainsi la conformité à la syntaxe JSON standard sans compromettre la sécurité.
Exemple de mise en œuvre
Pour mettre en œuvre cette approche, suivez ces étapes :
var badJson = "{muh: 2}";
// Sanitize the JSON using regular expression replace
var correctJson = badJson.replace(/(['"])?([a-z0-9A-Z_] )(['"])?:/g, '"$2": ');
// Parse the sanitized JSON using JSON.parse
var obj = JSON.parse(correctJson);
Conclusion
L'utilisation d'expressions régulières pour nettoyer le JSON détendu permet une analyse transparente tout en évitant les risques de sécurité potentiels associés à eval.
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3