3 votos

CORS para XHR en IE10

Estoy recibiendo estos errores cuando alguien intenta abrir mi aplicación en IE. Aparece un mensaje pidiendo permitir contenido bloqueado, y cuando se hace clic todo funciona bien. ¿Hay alguna forma de habilitar CORS para evitar tener que hacer clic en Permitir contenido bloqueado?

SEC7118: XMLHttpRequest para http://services.arcgisonline.com/ArcGIS/rest/info?f=json requiere Compartir recursos de origen cruzado (CORS).
EDDM_API.html

SEC7120: Origen del archivo: no encontrado en el encabezado Access-Control-Allow-Origin.
EDDM_API.html

SCRIPT7002: XMLHttpRequest: Error de red 0x80070005, acceso denegado.
EDDM_API.html

SEC7118: XMLHttpRequest para http://static.arcgis.com/attribution/World_Street_Map?f=json requiere Compartir recursos de origen cruzado (CORS).
EDDM_API.html

Buscando en la web encontré este fragmento de código, simplemente desconozco dónde colocarlo en mi script, o si resolverá mi problema.

// Script en ejecución en http://eddmapi-dev.usps.gov/eddmapi/eddm_api.html
var xhr = new XMLHttpRequest();
    xhr.onerror = _handleError;
    xhr.onload = _handleLoad;
    xhr.open("GET", "http://eddmapi-dev.usps.gov/eddmapi/eddm_api.html", true);
    xhr.send();

1voto

Sospecho que el contenido bloqueado no está relacionado con el uso de los servicios de Esri. Intenta crear un sitio simple que solo cree un mapa con un mapa base y establece esriConfig.defaults.io.corsDetection = false y luego agrega explícitamente cualquier servidor habilitado para cors en esri.config.defaults.io.corsEnabledServers como sugirió CLJ. Esto eliminará el error XMLHttpRequest y esperamos revelar que el problema está relacionado con otro aspecto de tu sitio

0voto

ZeroSignal Puntos 1391

Necesitarás especificar tus servidores habilitados:

esri.config.defaults.io.corsEnabledServers.push("serverapi.arcgisonline.com");
esri.config.defaults.io.corsEnabledServers.push("services.arcgisonline.com");
esri.config.defaults.io.corsEnabledServers.push("static.arcgis.com");

-1voto

Kieran Benton Puntos 2783

Necesitarás configurar el servidor web para habilitar el Compartir Recursos de Origen Cruzado (CORS). Dependiendo de si usas IIS, Apache u otro servidor, reconfigurar la aplicación no es demasiado difícil. Aquí tienes un enlace sobre cómo habilitar CORS para tu aplicación: http://enable-cors.org/server.html

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X