答案 0 :(得分:4)
我遇到了同样的问题,我认为问题始于Chrome 49.0.2623.87。我希望它将在即将到来的更新中修复。现在,我正在使用下面的脚本,可以找到here。
var favIcon = "favicon.ico";
var docHead = document.getElementsByTagName('head')[0];
var newLink = document.createElement('link');
newLink.rel = 'shortcut icon';
newLink.href = 'data:image/png;base64,'+favIcon;
docHead.appendChild(newLink);
它不会停止favicon请求,所以在短时间内你仍然会看到chrome的默认favicon,但我相信没有太多的事要做。
答案 1 :(得分:2)
我找到了解决方法on Github。引用@Doeke:
尝试重新排列图标链接标签。对我来说,将16x16链接放在32x32之前可以解决此问题。至于为什么这样...我不知道。
对我来说,这意味着将我的唯一图标<link>
放在<head>
之后<meta charset>
的顶部。
答案 2 :(得分:1)
尝试从您的服务器提供favicon.ico
或为其添加路由。使用快速catch-all app.get('*')
方法时,我遇到了这样的错误,该方法将所有请求重定向到index.html
(即使对于favicon)
答案 3 :(得分:0)
通过 index.html 页面中的以下代码行更改网站图标请求
<link rel="icon" href="data:image/vnd.microsoft.icon;base64,<data>">
这里,<data>
是您网站图标的 base64 数据。
参考https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URIs
这个技巧会阻止用户的浏览器向网站图标发送自动 HTTP 请求。