¿Es posible habilitar Cross-Origin Resource Sharing (CORS) en OpenLayers? ¿Si es así, cómo?
Tengo un mapa web en OpenLayers, y estoy usando un lienzo HTML para representarlo como una imagen PNG. Mi script funciona muy bien, pero debido a la política del mismo origen del navegador , solo puedo convertir mi lienzo en una imagen si todos los mosaicos del mapa que he dibujado provienen del mismo host (por ejemplo sub.domain.com
).
Para aumentar la velocidad de carga de mi mapa, me tire de las baldosas de una serie de subdominios: a.domain.com
, b.domain.com
, etc. Esto mejora considerablemente el rendimiento, trabajando alrededor límite del navegador de cuatro conexiones simultáneas por host, pero me impide de alguna vez convertir mi lienzo a una imagen, como Los mosaicos provienen de múltiples hosts.
Estoy tratando de usar CORS para solucionar este problema. He configurado el Access-Control-Allow-Origin
encabezado de respuesta apropiado para el conjunto de mosaicos que sirvo con PHP, pero esto no tiene ningún efecto. Sospecho que esto se debe a que no tiene el Origin
encabezado en la solicitud (como se muestra en el ejemplo en la página Wiki). Parece que se requiere alguna configuración de OpenLayers. ¿Pero que? ¿Alguien más ha hecho esto con éxito?