Frage

Ich habe einen Web-Service in http: // server / abc / Service die durch zugegriffen wird Blitz aus einer anderen Domäne. Ich entfalteten eine Cross-Domain-Richtliniendatei http: //server/abc/crossdomain.xml und machte die Flash-Last es mit:

 flash.system.Security.loadPolicyFile("http://server/abc/crossdomain.xml");

im Konstruktor des Hauptmovieclips. Wenn jedoch der Blitz beginnt, fordert er und lädt diese Datei (in Firebug beobachtet), dann aber auch er fordert sie von der Wurzel des Servers (dh von http: //server/crossdomain.xml ), die nicht existiert. Nachfolgende HTTP-Anfragen nicht funktionieren Sicherheit Cross-Domain-Fehler melden. Wenn ich die Richtliniendatei auf den Stamm des Servers setzen, alles funktioniert.

Warum es die Richtliniendatei von der Wurzel fordern und sogar dachte, es es aus dem Unterverzeichnis lädt? Warum das Unterverzeichnis Richtliniendatei ist nicht genug?

Ich sollte auch beachten, dass die beiden Richtliniendateien geladen werden, bevor Anwendung von HTTP-Anforderungen ausgegeben werden.

War es hilfreich?

Lösung

Ich denke, es zu überprüfen hat, dass die Master-Richtliniendatei die alternative Richtliniendatei zum Festlegen von Berechtigungen ermöglicht.

Hier ist ein interessanter Artikel mit diesem kleinen Leckerbissen :

  

Wenn ein Client andere angewiesen ist, an einer Stelle eine Richtliniendatei zu verwenden ist als die der Master-Richtliniendatei muss der Kunde zunächst die Meta-Politik der Master-Richtliniendatei überprüfen, um zu bestimmen, ob die ursprüngliche Richtliniendatei erlaubt ist,

Andere Tipps

Eine Richtliniendatei hat im Root-Web-Verzeichnis auf dem Server. Das ist, um sicherzustellen, dass jemand, der vielleicht einen Unterordner auf dem Server steuert keine Politik führen kann, dass die „offizielle“ Website (zB, die Wurzel). Nicht unterstützt

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top