Comment gérer les erreurs de chaîne de requête en javascript
- 4728
- 124
- Rayan Lefebvre
Les chaînes de requête sont un moyen de transmettre des données entre différentes pages ou composants d'une application Web. Ils sont souvent utilisés pour transmettre des paramètres à un serveur ou pour stocker des données dans l'historique du navigateur. Cependant, les chaînes de requête peuvent également être une source d'erreurs et de vulnérabilités de sécurité si elles ne sont pas gérées correctement.
Dans cet article, nous discuterons de la façon de gérer les erreurs de chaîne de requête en JavaScript.
1. Vérifiez les paramètres manquants
L'une des erreurs de chaîne de requête les plus courantes est les paramètres manquants. Cela se produit lorsqu'un paramètre requis n'est pas présent dans la chaîne de requête, conduisant à des erreurs lorsque le code essaie d'accéder à ce paramètre. Pour gérer cette erreur, vous devez vérifier si les paramètres requis sont présents dans la chaîne de requête avant d'essayer de les utiliser. Vous pouvez le faire en utilisant le Indice de() Méthode ou expressions régulières pour rechercher le paramètre dans la chaîne de requête.
Exemple:
const queRyString = fenêtre.emplacement.recherche; const urlParams = new UrlSearchParams (queystring); si (!Urlparams.a ('userId')) console.error («paramètre utilisateur manquant»);123456 | const queRyString = fenêtre.emplacement.Recherche; const urlParams = new UrlSearchParams (queystring); si (!Urlparams.a ('userId')) console.erreur («paramètre utilisateur manquant»); |
Dans l'exemple ci-dessus, nous vérifions si le ID de l'utilisateur Le paramètre est présent dans la chaîne de requête. S'il n'est pas présent, nous enregistrons un message d'erreur à la console.
2. Valider l'entrée
Une autre erreur de chaîne de requête courante est l'entrée non valide. Cela peut se produire lorsque l'utilisateur entre dans des caractères ou des valeurs non valides dans la chaîne de requête, tels que des caractères spéciaux ou des attaques d'injection SQL. Pour gérer cette erreur, vous devez valider l'entrée avant de l'utiliser dans votre code.
Exemple:
const queRyString = fenêtre.emplacement.recherche; const urlParams = new UrlSearchParams (queystring); const userId = urlparams.get ('userId'); si (!/ ^ [0-9] + $ /.test (userId)) Console.error («Paramètre invalide utilisateur»);1234567 | const queRyString = fenêtre.emplacement.recherche; const urlparams = new UrlSearchParams (queystring); const userId = urlparams.get ('userId'); si (!/ ^ [0-9] + $ /.test (userId)) Console.erreur ('paramètre utilisateur invalide'); |
Dans l'exemple ci-dessus, nous utilisons des expressions régulières pour valider le paramètre utilisateur. Nous vérifions si le paramètre ne contient que des nombres et aucun autre caractères. S'il contient d'autres caractères, nous enregistrons un message d'erreur à la console.
3. Désinfecter les entrées
Une autre façon de gérer les erreurs de chaîne de requête est de désinfecter l'entrée. La désinfection signifie supprimer ou échapper des caractères qui peuvent provoquer des erreurs ou des vulnérabilités de sécurité, telles que des balises HTML ou des caractères spéciaux. Vous pouvez utiliser des bibliothèques comme Dompurify ou Validator.js pour désinfecter votre contribution.
Exemple:
importer dompurify à partir de «dompurify»; const queRyString = fenêtre.emplacement.recherche; const urlParams = new UrlSearchParams (queystring); const Message = urlparams.get ('message'); const SanssentizedMessage = DOMPURIFY.désinfecter (message); console.Journal (désinfecté);12345678 | Importer dompurify à partir de «dompurify»; const queerystring = window.emplacement.recherche; const urlparams = new UrlSearchParams (queystring); const Message = urlparams.get ('message'); const SanssentizedMessage = DOMPURIFY.désinfecter (message); console.Journal (désinfecté); |
Dans l'exemple ci-dessus, nous utilisons DOMPURIFY pour désinfecter le paramètre de message. Nous supprimons les balises HTML ou les caractères spéciaux qui peuvent provoquer des vulnérabilités de sécurité.
4. Utiliser les blocs de coups d'essai
Enfin, vous pouvez utiliser des blocs d'essai pour gérer toutes les autres erreurs qui peuvent survenir lorsque vous travaillez avec les chaînes de requête. Cela peut inclure des erreurs comme des JSON non valides ou des valeurs inattendues. Les blocs d'essai vous permettent d'attraper ces erreurs et de les gérer gracieusement, sans écraser votre application.
Exemple:
essayez const questionstring = fenêtre.emplacement.recherche; const urlParams = new UrlSearchParams (queystring); const data = json.Parse (Urlparams.get ('data')); console.journal (données); catch (erreur) Console.error ('error analysant les données JSON');123456789 | essayez const questionstring = fenêtre.emplacement.recherche; const urlParams = new UrlSearchParams (queystring); const data = json.Parse (Urlparams.get ('data')); console.log (data); catch (error) console.error ('error analysant les données JSON'); |
Dans l'exemple ci-dessus, nous utilisons un bloc d'essai pour assister à toutes les erreurs qui peuvent se produire lors de l'analyse des données JSON du paramètre de données. Si une erreur se produit, nous enregistrons un message d'erreur à la console.
Conclusion
Les chaînes de requête sont un outil utile pour passer des données entre les différents composants d'une application Web. Cependant, ils peuvent également être une source d'erreurs et de vulnérabilités de sécurité si elles ne sont pas gérées correctement. En suivant les conseils et les exemples
- « Obtenez et publiez des demandes en utilisant Python
- Sécuriser votre site Web en utilisant .HTACCESS Best Practices »