我一直在向控制台添加日志,以检查不同变量的状态,而不使用Firefox调试器。
然而,在我在main.js文件中添加console.log的许多地方,我收到了以下错误,而不是我给自己的可爱的手写消息:
主线程上的同步XMLHttpRequest已弃用,因为它会对最终用户的体验产生不利影响。更多帮助http://xhr.spec.whatwg.org/
我可以在我的代码使用中添加哪些不会导致此错误的console.log替代品或包装器?
我“做错了”吗?
我一直在向控制台添加日志,以检查不同变量的状态,而不使用Firefox调试器。
然而,在我在main.js文件中添加console.log的许多地方,我收到了以下错误,而不是我给自己的可爱的手写消息:
主线程上的同步XMLHttpRequest已弃用,因为它会对最终用户的体验产生不利影响。更多帮助http://xhr.spec.whatwg.org/
我可以在我的代码使用中添加哪些不会导致此错误的console.log替代品或包装器?
我“做错了”吗?
当前回答
在Chrome浏览器中,按“F12” 开发工具->按F1。 参见设置->通用->外观:“不显示chrome数据保护警告”-设置此复选框。 参见设置->general->Console:“Log XMLHTTPRequest”-设置此复选框。
享受
其他回答
@ webgr部分回答实际上帮助我调试了这个警告@控制台日志,遗憾的是,答案的另一部分带来了这么多的反对票:(
不管怎样,下面是我发现这个警告的原因:
使用Chrome浏览器>按F12打开DevTools 打开抽屉菜单(在Chrome 3中右上角的垂直点) 在控制台>下检查Log XMLHttpRequests选项 重新加载给您错误的页面,并观察控制台日志中的每个ajax请求发生了什么。
在我的例子中,另一个插件在每次ajax调用后加载2个.js库,这是绝对不需要也没有必要的。禁用流氓插件从日志中删除了警告。从这一点上,你可以尝试自己解决这个问题(例如,限制脚本的加载到某些页面或事件-这是一个太具体的答案)或联系第三方插件开发人员来解决它。
希望这能帮助到一些人。
我在以下情况下得到这样的警告:
1) file1包含<script type="text/javascript" src="/javascript/jquery-1.10.2.js"></script>. js"页面有输入字段。我在输入字段中输入一些值,然后点击按钮。Jquery向外部php文件发送输入。
2)外部PHP文件也包含jquery,在外部PHP文件中我还包括<script type="text/javascript" src="/javascript/jquery-1.10.2.js"></script>. js。因为如果这样我就会收到警告。
从外部php文件中删除<script type="text/javascript" src="/javascript/jquery-1.10.2.js"></script>,并且没有警告。
正如我所理解的加载第一个文件(file1),我加载jquery-1.10.2.js,作为页面不重新加载(它发送数据到外部php文件使用jquery $.post),然后jquery-1.10.2.js继续存在。所以不需要再加载了。
这个问题在我的案例中得到了解决。
JS
$.ajaxPrefilter(function( options, original_Options, jqXHR ) {
options.async = true;
});
这个答案被插入到这个链接中
https://stackoverflow.com/questions/28322636/synchronous-xmlhttprequest-warning-and-script
为避免此警告,请不要使用:
async: false
在任何$.ajax()调用中。这是XMLHttpRequest唯一被弃用的特性。
默认为
async: true
jQuery已经弃用了同步XMLHTTPRequest
Visual Studio 2015/2017的实时调试器正在注入包含弃用调用的代码。