Estoy tratando de realizar una solicitud HTTP de dominio cruzado al servicio WCF (que yo poseo). He leído varias técnicas para trabajar con las limitaciones de secuencias de comandos de dominio cruzado. Debido a que mi servicio debe acomodar tanto las solicitudes GET como POST, no puedo implementar alguna etiqueta de script dinámica cuyo src sea la URL de una solicitud GET. Como soy libre de realizar cambios en el servidor, comencé a tratar de implementar una solución que implique la configuración de las respuestas del servidor para incluir el encabezado "Access-Control-Allow-Origin" y las solicitudes "prevuelo" con la solicitud OPTIONS. Obtuve la idea de esta publicación: Getting CORS workingCORS - ¿Cómo 'prevuelo' una httprequest?
En el lado del servidor, mi método web agrega 'Access-Control-Allow-Origin: *' a la respuesta HTTP. Veo que las respuestas sí incluyen este encabezado ahora. Mi pregunta es: ¿cómo 'preflight' una solicitud (OPCIONES)? Estoy usando jQuery.getJSON para hacer la solicitud GET pero el navegador cancela la solicitud de inmediato con el infame:
Origen http://localhost no está permitido por Access-Control-Allow-Origen
Hay alguien familiarizado con esta técnica CORS? ¿Qué cambios se deben realizar en el cliente para realizar una verificación previa de mi solicitud?
Gracias!
¿podría agregar varios dominios a Access-Control-Allow-Origin? – botbot
@botbot Es probable que ya hayas resuelto esto, pero en caso de que otros se pregunten qué puede hacer 'Access-Control-Allow-Origin: * ' –
, posiblemente me haya perdido algo. Entonces, ¿debería enviar dos solicitudes XMLHttp? Uno para la verificación previa; comprobar la respuesta en caso de éxito y luego enviar la consulta real? – Kangkan