message von iframe wird nicht von parent empfangen
bearbeitet von
Hallo Linuchs,
das crossorigin-Attribut VERSCHÄRFT die Situation und macht sie nicht besser. Egal ob mit "anonymous" oder mit "use-credentials". Ungültige Werte wie "anonymus" werden übrigens als "anonymous" interpretiert.
Wenn Du crossorigin **nicht** angibst, wird das Script ohne Verwendung von CORS geladen, d.h. dann kannst Du Scripte von beliebigen Stellen inkludieren. Aber wenn Du ihn angibst, dann wird CORS beachtet und Du bekommst das Script nur dann, wenn die CORS-Header es zulassen.
> weiß ich nicht, wohin mit den Zeilen
> `Access-Control-Allow-Origin: https://shantyfreun.de`
Das ist ein Response-Header. Den muss der Server von shanty-fsd.de setzen, damit die Seite, die von dort geladen wird, Daten von shantyfreun.de lesen darf. Das betrifft vor allem Ajax-Zugriffe (XMLHttpRequest und fetch). Scripte betrifft es nur, wenn das crossorigin-Attribut gesetzt ist. Setzen kannst Du den Header aus PHP heraus oder in der .htaccess Datei.
*Disclaimer:* Wenn Du den iframe mit dem sandbox-Attribut lädst, sieht die Sache nochmal anders aus, dieses Attribut aktiviert einen Paranoia-Modus, in dem alles verboten ist, was Du nicht ausdrücklich erlaubst.
> Warum kann die Seite https://shanty-fsd.de/ einen iframe mit src="https://remso.eu/?VIP=1010&LO=positionen&posi=19" zeigen?
Weil das **Zeigen** kein Problem ist. Und Du dort kein postMessage machst.
_Rolf_
--
sumpsi - posui - obstruxi
message von iframe wird nicht von parent empfangen
bearbeitet von
Hallo Linuchs,
der crossorigin-Header VERSCHÄRFT die Situation und macht sie nicht besser. Wenn Du crossorigin **nicht** angibst, wird das Script ohne Verwendung von CORS geladen, d.h. dann kannst Du Scripte von beliebigen Stellen inkludieren. Aber wenn Du ihn angibst, dann wird CORS beachtet und Du bekommst das Script nur dann, wenn die CORS-Header es zulassen.
> weiß ich nicht, wohin mit den Zeilen
> `Access-Control-Allow-Origin: https://shantyfreun.de`
Das ist ein Response-Header. Den muss der Server von shanty-fsd.de setzen, damit die Seite, die von dort geladen wird, Daten von shantyfreun.de lesen darf. Das betrifft vor allem Ajax-Zugriffe (XMLHttpRequest und fetch). Scripte betrifft es nur, wenn das crossorigin-Attribut gesetzt ist. Setzen kannst Du den Header aus PHP heraus oder in der .htaccess Datei.
*Disclaimer:* Wenn Du den iframe mit dem sandbox-Attribut lädst, sieht die Sache nochmal anders aus, dieses Attribut aktiviert einen Paranoia-Modus, in dem alles verboten ist, was Du nicht ausdrücklich erlaubst.
> Warum kann die Seite https://shanty-fsd.de/ einen iframe mit src="https://remso.eu/?VIP=1010&LO=positionen&posi=19" zeigen?
Weil das **Zeigen** kein Problem ist. Und Du dort kein postMessage machst.
_Rolf_
--
sumpsi - posui - obstruxi