检测未找到的图标 - Google S2 Favicon

时间:2013-08-08 06:24:48

标签: javascript html favicon

如果Google S2网站图标服务无法找到网站的图标,则会返回默认图片。我想知道找不到图标,所以我可以显示其他默认图像(在我的服务器上),或切换到另一个图标服务(如g.etfv.co)。我知道Google S2并不是很好。

我需要在浏览器中执行此操作,因此HTML / JavaScript解决方案会很好。 我将永远有根网址,例如www.google.com或www.facebook.com。

最后一个问题:如何检测Google S2未找到的favicon,或者我应该切换到另一个favicon提供商?

提前致谢!

1 个答案:

答案 0 :(得分:0)

我写了一些代码(作为wp插件)

如果提供了默认图像,它会检查每个favicon提供程序。如果是这样:然后跳转到下一个提供者。如果没有提供者给我一个图像,我会自己做一个卷曲,例如也可以按照重定向进行扫描,然后扫描404's for favicon。

我在返回的数据字符串上检查它:如果它等于特定提供者提供的“空图像”,那么嗯...它是一个空图像(如果提供者更改了他的默认图像,那么需要更改empty-image-string的变量

e.g。谷歌它是(MD5):

private $_default = 'b8a0bf372c762e966cc99ede8682bc71';

完整源代码(GPL):http://plugins.svn.wordpress.org/wp-favicons/trunk/(在/ includes / server下,您将找到执行http请求的插件,解析图像等...)

我决定以插件方式实现它:

  • 插件添加提供者(来源)
  • 插件可进一步操作图像(例如重新缩放等)
  • 如果没有找到,则
  • 插件提供默认的favicons,例如gravatars
  • 用于执行缓存的插件

它实现为服务器和客户端,因此您也可以安装服务器部分,然后通过http xml请求对服务器进行调用:发送一段文本并获取返回的文本,并将所有href替换为hrefs + favicon在它面前。