我无法通过在IE或Firefox中工作的azure cdn暴露出azure blob存储托管字体。
我相信这是因为@ font-face跨域问题(CORS),正常的解决方案是添加一个Access-Control-Allow-Origin标头。我知道大多数CDN现在支持这个,但我假设Azure仍然没有。谁能证实这一点?
如果是这种情况,有没有解决方法?
CDN不会修改来自源的头,因此它会响应blob存储发出的任何头。 Blob存储不支持CORS头。
我很惊讶地发现@ font-face有跨域限制,但看起来你是对的(对于Firefox和IE)。
如果你有这个选项,你可以将字体放在CDN后面的云服务(而不是blob存储)上,并在那里发出正确的标题。
您的评估是正确的。
作为解决方法,我们公司正在使用谷歌存储(支持CORS)。
我还建议对此问题进行投票,以便Azure团队知道有多少人遇到了这个问题。
我可以使用字体,无需设置CORS选项。我将我的字体直接链接到blob存储,而不是CDN,因为这个不支持blob中的CORS。