Estoy tratando de hacer que CORS solicite POST desde domain.com a a.domain.com.¿Cómo funcionan CORS y Access-Control-Allow-Headers?
Mi JavaScript parece a esto
$('#fileupload').fileupload({
xhrFields: {
withCredentials: true
},
dataType: 'json',
url: $('#fileupload').data('path'),
singleFileUploads: true,
add: function(e, data){
data.submit();
}
});
Al principio veo la ruta opciones que se llama así:
Request URL: https://a.domain.com/some/route
Request Method:OPTIONS
Status Code:200 OK
OPCIONES DE SOLICITUD:
Access-Control-Request-Headers:origin, content-type, accept
Access-Control-Request-Method:POST
Host:a.domain.com
Origin:http://domain.com:3000
Referer:http://domain.com:3000/home
OPCIONES DE RESPUESTA
Access-Control-Allow-Credentials:true
Access-Control-Allow-Methods:POST
Access-Control-Allow-Origin:http://domain.com:3000
Connection:keep-alive
Content-Length:0
Content-Type:text/html;charset=utf-8
Esa solicitud se devuelve con un 200 como se indica. En mi servidor, tengo la misma ruta con POST
método y esto es lo que recibo a cambio después de la OPTIONS
Request URL:https://a.domain.com/some/route
solicitud POST
Content-Type:multipart/form-data; boundary=----WebKitFormBoundaryjwr5Pk7WBcfzMdbO
Origin:http://domain.com:3000
Referer:http://domain.com:3000/home
y la solicitud POST
se cancela/falla.
Mi pregunta es, ¿necesito tener el control de acceso-permitir-origen en el controlador POST también?
Tengo una cookie para autorización que tiene el dominio .domain.com
que se envió la cookie una vez en una solicitud y no se está enviando ahora. ¿Alguna idea de por qué sucedería eso?
se puede omitir el protocolo? o puede agregar uno con http y https? – Michael