http:// localhost/undefined 404(未找到)

use*_*335 9 javascript google-chrome undefined http-status-code-404

我的问题描述中并不清楚.让我再尝试一次.

NB.这是我的制作,舞台和开发网站常见的问题(不仅仅是我的delevlopment网站,因为评论者似乎已经想到).

NB.使用Chrome浏览器而非Firefox浏览时会出现此问题.

问题发生在站点主页:http://www.example.com(或附加"/index.php").页面加载成功,但Chrome开发者工具的控制台面板显示404错误.消息显示为"GET http://www.example/undefined 404(Not Found)".它总是将错误显示为"(index):1",即DOCTYPE行.无论产生什么问题,都不是这样.

页面加载正常,我只是在开发人员工具控制台中收到这条奇怪的消息.(我可能在最初的问题描述中并不清楚.)Firfox的控制台显示没有这样的错误.

我想跟踪产生此错误的原因.特别是,我想找到Chrome获取"未定义"网址的位置.我的猜测(但只是猜测)是我的许多Javascript文件中的一个是从未定义的变量生成URL.Chrome的问题位置"(索引):1",是错误的.如果您想从Chrome中获取更有用的错误消息,我们将不胜感激:找到该网址的文件名称会有所帮助.如果我可以在没有在我的所有Javascript文件中逐个设置断点的情况下这样做,那将是特别好的.:-)

删除了URL的原始问题(我在信誉<10时允许的链接数量有限)如下.你可能不想阅读它,因为人们已经被它弄糊涂了.

我们有相当复杂的Drupal网站.当转到主页时,Chrome(版本45.0.2454.85 m)控制台显示错误:"[URL已删除] 404(未找到)(索引):1".(我在我的本地计算机上使用开发站点,因为那里的缩小是关闭的.)
好吧,我想,我知道该怎么做:去找任何文件中的有问题的地方,刮几下头,得到一个好主意,并解决问题.一个小难点:问题肯定不是发生在索引,第1行(我假设是"(索引):1"的意思).错误消息中的"未定义"表明但不能证明违规者是我们大约十几个JavaScript文件之一.据推测,某处的某个变量未定义.那么我如何让Chrome扼杀发生进攻的位置?它没有给我任何未定义的值JavaScript错误,只是[URL删除] /未定义的404.提前感谢任何想法.

编辑:我忘了添加Firefox没有显示此类错误.

Onz*_*nza 13

我发现了这个问题可能出现在哪里.

  1. 确保所有生成的CSS(样式)设置背景图像等,其中有url()实际指向某处; 如果它没有指向错误将设置为.html DOCTYPE的任何地方.
  2. 检查图像标签的src; 确保它们不是由JavaScript设置为undefined.
  3. 还要检查脚本文件的src,即使在这种情况下发生的情况要少得多.

所以是的,它实际上并没有指出实际错误的位置,但实际上必须使用它无法找到的查找资源,这是可怕的.我们可能甚至不希望它搜索.例如.当元素不可见时,我们不设置任何图像; 但我们仍然传递未定义它将搜索未定义,它不会给你任何关于错误在树的哪一部分的提示.

由于您的页面太复杂而无法知道它的位置,或者这甚至是您所面临的问题; 这是我能说的最多; 我发现它太快的唯一原因是因为反应开发工具马上告诉我我的渲染属性以及组件非常小的事实.


小智 5

找出导致此问题的原因的另一种方法(当您有一个合适大小的解决方案时)是检查是否有任何未定义的分配给任何 html 属性/样式。我们可以通过右键单击 body 标签、递归展开、复制 HTML、粘贴它并搜索 undefined 来检查这一点。

如果 href/src/url 等有未定义的分配,它可能会给你一个关于问题所在的线索。

这可以通过不向这些属性分配 undefined 来解决。