Ich habe eine Seite mit einem iframe, der eine externe Seite zeigt. Die externe Seite ist so konfiguriert, dass eine CSS-Datei von meinem Server heruntergeladen werden kann.Wie füge ich in ASP.NET einen CORS-Header nur für TTF-Dateien hinzu?
Im CSS, habe ich einen @font-face
Selektor:
@font-face {
font-family: "Special Font";
src: url("<%= Request.Url.GetLeftPart(UriPartial.Authority) + "/fonts/specialfont.ttf" %>");
}
Diese Downloads und zeigt die Schrift fein in Chrome, aber in Firefox, lädt es die Schrift, aber weigert sich, es zu benutzen. Ein wenig Forschung zeigt, dass dieses Problem ein ursprungsübergreifendes politisches Problem ist. Eine der Lösungen hier erwähnt:
Ist die CORS-Header zu ermöglichen. Allerdings stellte die Lösung ist standortweit:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.webServer>
<httpProtocol>
<customHeaders>
<add name="Access-Control-Allow-Origin" value="*" />
</customHeaders>
</httpProtocol>
</system.webServer>
</configuration>
Während ich es nur für nur .TTF
Dateien aktivieren möchte. Gibt es eine Möglichkeit, dies zu tun, entweder mithilfe eines HttpHandler oder einer anderen Methode?