# Débogage du JS côté client {{#include ../../banners/hacktricks-training.md}} Déboguer le JS côté client peut être pénible car chaque fois que vous changez l'URL (y compris un changement dans les paramètres utilisés ou les valeurs des paramètres), vous devez **réinitialiser le point d'arrêt et recharger la page**. ### `debugger;` Si vous placez la ligne `debugger;` à l'intérieur d'un fichier JS, lorsque le **navigateur** exécute le JS, il **s'arrêtera** au **débogueur** à cet endroit. Par conséquent, une façon de définir des points d'arrêt constants serait de **télécharger tous les fichiers localement et de définir des points d'arrêt dans le code JS**. ### Remplacements Les remplacements de navigateur permettent d'avoir une copie locale du code qui va être exécuté et d'exécuter celle-ci au lieu de celle du serveur distant.\ Vous pouvez **accéder aux remplacements** dans "Dev Tools" --> "Sources" --> "Overrides". Vous devez **créer un dossier local vide à utiliser pour stocker les remplacements**, donc créez simplement un nouveau dossier local et définissez-le comme remplacement sur cette page. Ensuite, dans "Dev Tools" --> "Sources", **sélectionnez le fichier** que vous souhaitez remplacer et avec **un clic droit, sélectionnez "Save for overrides"**. ![](<../../images/image (742).png>) Cela va **copier le fichier JS localement** et vous pourrez **modifier cette copie dans le navigateur**. Ajoutez simplement la commande **`debugger;`** où vous le souhaitez, **enregistrez** le changement et **rechargez** la page, et chaque fois que vous accédez à cette page web, **votre copie JS locale va être chargée** et votre commande de débogage maintenue à sa place : ![](<../../images/image (594).png>) ## Références - [https://www.youtube.com/watch?v=BW\_-RCo9lo8\&t=1529s](https://www.youtube.com/watch?v=BW_-RCo9lo8&t=1529s) {{#include ../../banners/hacktricks-training.md}}