重复请求 apple-touch-icon-precomposed.png 并在 head 中设置了 apple-touch-icon

Posted

技术标签:

【中文标题】重复请求 apple-touch-icon-precomposed.png 并在 head 中设置了 apple-touch-icon【英文标题】:Repeated Requests for apple-touch-icon-precomposed.png with apple-touch-icon set in head 【发布时间】:2012-10-31 13:33:47 【问题描述】:

我已在页面顶部设置了 apple-touch-icon 文件的路径:

<link rel="apple-touch-icon" href="/images/apple-touch-icon.png">
<link rel="apple-touch-icon" sizes="72x72" href="/images/apple-touch-icon-72x72.png">
<link rel="apple-touch-icon" sizes="114x114" href="/images/apple-touch-icon-114x114.png">

但我经常会收到一批(一次超过五个)来自 android 用户的 /apple-touch-icon-precomposed.png 请求。这是正常行为吗?如何让它停止?我知道我可以添加文件,但我不想创建文件的新版本并希望获得相同的效果。

更新 我们最近看到了对 apple-touch-icon-144x144.png 的请求,但我没有在网上找到任何解释我们需要它的原因(我们还是添加了它)。

【问题讨论】:

嗯?我不知道你在问什么。您的意思是您看到来自 Android 浏览器(或至少具有 Android 代理 ID 的浏览器)的请求从您的网站下载文件? @Simon 是的,这就是我所看到的。它不承认我脑海中的苹果触摸图标链接。 啊,明白了。这是苹果特有的东西。我的猜测是,因为除了 Safari 之外没有浏览器会理解该标签、Chrome 或 Android 库存或任何浏览器都会简单地将其视为 HREF。我没有足够的 html 来建议避免它的方法。 这些请求类似于wikipedia 上所述的 FAVICON 请求。你可以很容易地从你拥有的图像生成一个 apple-touch-icon-precomposed.png here,如果你想快速继续,你可以把它放到你的根目录中。 HTH。 我能感受到你的沮丧。苹果完全不在乎他们的想法。即使在使用 rel 链接时,Apple 仍会尝试首先查找“预组合” - 触发 404。处理它的最佳方法是 htaccess-prevent 任何此类请求。 【参考方案1】:

见http://www.ravelrumba.com/blog/android-apple-touch-icon/

'... Android 2.1 ... 仅当您使用“apple-touch-icon-precomposed”的 rel 值链接到该图标时才会使用该图标。'

所以它似乎是“正常的”(不适用于非预组合版本)。

另见http://developer.apple.com/library/ios/#documentation/UserExperience/Conceptual/MobileHIG/IconsImages/IconsImages.html#//apple_ref/doc/uid/TP40006556-CH14

高分辨率 iPad 尺寸:144 x 144

【讨论】:

以上是关于重复请求 apple-touch-icon-precomposed.png 并在 head 中设置了 apple-touch-icon的主要内容,如果未能解决你的问题,请参考以下文章

中小型项目统一处理请求重复提交

如何优雅地处理重复(并发)请求?

Vue路由切换&Axios接口取消重复请求

Charles——charles 工具栏Tools总结——批量重复请求/重复发包工具/repeat——Advanced Repeat就是重复发包多次

巧用Newtonsoft.Json处理重复请求/并发请求?

重复请求(并发访问)解决方案