使用浏览器调试服务器端返回的无法调试的JavaScript脚本

来源:互联网 发布:获取有网络的ip 编辑:程序博客网 时间:2024/05/17 13:41

这里研究一个有意思的问题,就是浏览器调试服务器端返回的JavaScript脚本。在Chrome,我们可以调试页面中的JS代码。但是如果页面返回的是纯净的JS代码,而没有任何其他的内容,这时候调试就比较困难了。而且,很多时候我们都是调试人家第三方网站。如果是调试自己的网站,当然没有这么复杂,在代码中你想中断的地方加一个alert就可以了。现在是第三方网站,我们没有办法改变服务器的东西,只有在客户端想办法了。

 

CSDN的登录为例子。这是CSDN的登录页面。



正常逻辑来讲,此时我们点击登录,这些表单数据就会提交到服务器,然后服务器作出验证后,返回个人主页的HTML的内容。但是CSDN的做法没有遵循正常的逻辑,相反,它是返回了一段JS代码。没有错,在你期盼HTML的时候,它返回了一段纯净的JAVASCRIPT代码。

 

而且最奇怪的是,向这种返回的JS代码,会立即被Chrome执行,然后JS会有redirect代码去跳转到其他的页面。即使这里我勾选了Preserve log,我们只能看到这次的请求过程,却看不到详细的JS代码,Response中一片空白。我使用Firefox看到了相应的JS代码内容。




我现在想对那段JS代码做一些调试,单步调试,看看它是怎么运行的。这时候我就遇到了问题。我看不到JS代码,我怎么设置断点啊。我可以把它返回的JS代码的地址,直接拷贝到浏览器中。



0 0
原创粉丝点击