我正在提供一个脚本,用户可以在其网页上嵌入脚本(请考虑FB或Tweet这个按钮)。如何调试谁在覆盖我的jQuery ajax行为?
在一个主机页面,我注意到一些非常奇怪的现象:我的脚本执行使用jQuery XHR POST
请求:
$.ajax({
url: myUrl
, data: data
, method: 'POST'
, beforeSend: function(xhr){
xhr.setRequestHeader('X-Some-Header', someValue);
}
});
个问题中,这将转而执行GET请求的页面。该页面非常混乱,加载了大约4个不同版本的jQuery,并使用Prototype 1.6。我的猜测是某个地方的某个人会覆盖某些东西,将每个XHR变成GET
请求(当我检查网络活动时,也没有一个POST
离开该网站,也从其他第三方脚本)。
麻烦是我不知道如何调试,因为阅读吨和缩小代码吨将不会有太多的帮助。
有没有一种可行的方法来做这个调试?我可以以某种方式强制检测,如果jQuery已被改变之前我的脚本使用它?我应该运送自己的$.post
版本吗?
如何将'console.log'注入到dev'jQuery'版本,然后用修改后的页面替换页面上的一个'jQuery'库?您可以使用代理来替代lib,而不必使用代理来触摸后端,如“Fiddler2”。 –
查看Chrome开发工具中的网络选项卡,启动器列。它给你脚本名称和行号。 –