【问题标题】:External web font via redirect通过重定向的外部网络字体
【发布时间】:2023-03-19 09:56:02
【问题描述】:

当尝试在网页上使用来自另一个域的字体文件时,我遇到了跨域资源策略的所有荣耀。

因此,我没有使用@font-face 直接从 CSS 引用外部字体 URL,而是引用了重定向到外部字体资源的本地 URL 路径。我认为浏览器可能会将字体视为同域资源。确实,重定向似乎欺骗了 Chrome 使用外部字体,但 Firefox 并非如此,它不允许这样做。

我的问题是,Chrome 和 Firefox 分别展示的两种行为中,哪一种符合标准?

【问题讨论】:

  • 只是补充一点,为了使用 CORS 加载资源,您有时可以通过在其中使用 loader.php?url=...echo file_get_contents($_GET['url']); 来作弊......它对我有用。
  • 啊,明白了。因此,您可以代理资源,这样即使浏览器也无法判断它是外部的。整洁!

标签: css redirect cross-domain webfonts


【解决方案1】:

发件人:http://www.w3.org/TR/cors/#cors-api-specification-redirect

由于浏览器基于同源安全模型和 本规范中概述的策略适用于在 浏览器,预计将使用此策略的 API 将 必须处理导致重定向的同源请求 以一种特殊的方式跨域。

对于透明处理重定向的 API,鼓励 CORS API 规范也透明地处理这种情况,方法是“捕获”重定向并在(跨域)重定向 URL 上调用跨域请求算法。

据我所知,Firefox 似乎以“正确的方式”处理它。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-21
    • 2023-03-03
    • 1970-01-01
    • 2017-05-11
    • 2015-10-04
    • 1970-01-01
    相关资源
    最近更新 更多