mirror of
https://github.com/HackTricks-wiki/hacktricks.git
synced 2025-10-10 18:36:50 +00:00
31 lines
1.8 KiB
Markdown
31 lines
1.8 KiB
Markdown
# 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"**.
|
|
|
|
.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:
|
|
|
|
.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}}
|