本帖最后由 Magic- 于 2020-12-22 13:29 编辑
* 写在前面:
*
* 大多数获取ico类只有一个方式,就是获取根目录下的favicon.ico文件,对于大部分站点来说,是没问题的
*
* 另外的引入方式: 自定义地址,或是其它格式,这种就无法通过默认方法获取
* 有cdn地址的,相对目录的等等,而这类站点也不在少数,如w3school
* 另外就是一些更加奇葩的引用,如博客园(cnblogs.com) 二级目录个人主页,通过加载脚本设置
*
*
* 功能上来讲,这份应该是比较全的了,比较曾经找了很久,都没有中意的
*
* 基于兴趣自学,你要跟我讲代码繁琐,框架,那你都是对的,请坚持自己!
*
* 想了想,还是放出来,准备放下这块兴趣了,我已开始了新的旅途,创业,而方向也与it关系不大了。 --- 食品行业
* ---------------------- 获取网站小图标 2020-12-21 完工 ----------------------
*
*
* 【参数】?url= 必须值,需要获取的网站url,为空则会显示默认的图标
*
* 【参数】若你的链接返回提供默认的ico图标,可以增加参数 &info=on 查看原因
*
* 【参数】关于缓存更新:调用时会进行判断,超过7天会自动更新,可手动 增加参数 update=on 即可
* 避免参数被滥用,手动也需要超过20分钟才可以,否则会强制显示默认图标
*
* 关于重定向:已支持,还有就是ico地址重定向, 例如淘宝的图标地址就是301的
*
* 关于跳转/内页:短网址跳转暂不支持,因为跳转花样太多,后续再慢慢支持
* 使用get方法, & 符号无法识别, 参数和二级目录主页形式的无法保留, 仅取根域名进行获取
* 如天猫的商品页面,是需要带上商品id才能正确返回内容,而参数在get的时候,就已经丢失了
*
* 缓存机制:优先读取缓存文件,好处在于,当站点临时出于无法打开的状态时,依旧可调用缓存进行显示 缓存目录: 根目录/cache/
*
* 关于协议,获取时会按顺序尝试 http / https
*
* 链接验证:支持带上协议/不带也行,多级域名,带中横杠,ip,端口的链接, 为尽量保证链接的正确, 最好是从地址栏直接复制
*
* 支持格式:.ico/.png/.jpg/.gif (svg暂不支持)
*
* 获取方式:方法1:默认获取根目录下文件名 favicon
* 方法2:抓取页面数据匹配
* 更多奇葩引用方式的待更新,如:博客园(cnblogs.com) 二级目录个人主页自定义的ico 调用方式太多太杂
*
*
* 优化:不再遍历本地目录,数据库查询,精准匹配,更快返回
* 更新缓存触发时若站点无法打开,原图标数据不会被覆盖,仅更新数据库信息
*
* 那么,江湖再见,成功了,叫总。失败了,叫某!
*
--- 敲黑板 --- 代码是PHP的,这个封装成E意义不大,有兴趣自行封装 对于导航和友链,在线获取是个不错的选择 有点基础的同志应该很好上手 有问题里面有联系方式 ↓
|