# Debugging Client Side JS {{#include ../../banners/hacktricks-training.md}} Debugowanie JS po stronie klienta może być uciążliwe, ponieważ za każdym razem, gdy zmieniasz URL (w tym zmiany w używanych parametrach lub wartościach parametrów), musisz **zresetować punkt przerwania i przeładować stronę**. ### `debugger;` Jeśli umieścisz linię `debugger;` w pliku JS, gdy **przeglądarka** wykonuje JS, **zatrzyma** **debugger** w tym miejscu. Dlatego jednym ze sposobów na ustawienie stałych punktów przerwania byłoby **pobranie wszystkich plików lokalnie i ustawienie punktów przerwania w kodzie JS**. ### Overrides Nadpisania w przeglądarce pozwalają na posiadanie lokalnej kopii kodu, który ma być wykonany, i wykonanie tej kopii zamiast tej z zdalnego serwera.\ Możesz **uzyskać dostęp do nadpisania** w "Dev Tools" --> "Sources" --> "Overrides". Musisz **utworzyć lokalny pusty folder, który będzie używany do przechowywania nadpisania**, więc po prostu utwórz nowy lokalny folder i ustaw go jako nadpisanie na tej stronie. Następnie, w "Dev Tools" --> "Sources" **wybierz plik**, który chcesz nadpisać, a następnie **kliknij prawym przyciskiem myszy i wybierz "Save for overrides"**. ![](<../../images/image (742).png>) To **skopiuje plik JS lokalnie** i będziesz mógł **zmodyfikować tę kopię w przeglądarce**. Po prostu dodaj polecenie **`debugger;`** tam, gdzie chcesz, **zapisz** zmiany i **przeładuj** stronę, a za każdym razem, gdy uzyskasz dostęp do tej strony internetowej, **twoja lokalna kopia JS zostanie załadowana** i twoje polecenie debuggera pozostanie na swoim miejscu: ![](<../../images/image (594).png>) ## References - [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}}