31 lines
1.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 调试客户端 JS
{{#include ../../banners/hacktricks-training.md}}
调试客户端 JS 可能很麻烦,因为每次您更改 URL包括参数或参数值的更改您需要 **重置断点并重新加载页面**
### `debugger;`
如果您在 JS 文件中放置 `debugger;` 这一行,当 **浏览器** 执行 JS 时,它会在该位置 **停止** **调试器**。因此,设置常量断点的一种方法是 **将所有文件下载到本地并在 JS 代码中设置断点**
### 覆盖
浏览器覆盖允许您拥有即将执行的代码的本地副本,并执行该副本,而不是来自远程服务器的代码。\
您可以在 "Dev Tools" --> "Sources" --> "Overrides" 中 **访问覆盖**
您需要 **创建一个本地空文件夹来存储覆盖**,所以只需创建一个新的本地文件夹并在该页面中将其设置为覆盖。
然后,在 "Dev Tools" --> "Sources" 中 **选择您想要覆盖的文件**,并 **右键单击选择 "Save for overrides"**
![](<../../images/image (742).png>)
这将 **在本地复制 JS 文件**,您将能够 **在浏览器中修改该副本**。所以只需在您想要的地方添加 **`debugger;`** 命令,**保存** 更改并 **重新加载** 页面,每次您访问该网页时 **您的本地 JS 副本将被加载**,并且您的调试命令将保持在其位置:
![](<../../images/image (594).png>)
## 参考
- [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}}