¿Qué son las solicitudes preflight y cómo funcionan?
Solicitud Preflight
Es una solicitud HTTP de método OPTIONS, enviada antes de la solicitud en sí, para determinar si esta última es segura para enviar.
Solo después de que el servidor haya enviado una respuesta positiva, se envía la solicitud HTTP mismo.
La solicitud preflight contiene metadatos con información como:
-
Origin: indica el origen de la solicitud (nombre del servidor);
-
Access-Control-Request-Method: qué métodos HTTP se utilizarán;
-
Access-Control-Request-Headers: claves que estarán en los headers.
Cómo funciona
Como se describe en página de creación de recursos,
-
Si ha implementado el método OPCIONS para el recurso, se respeta el flujo configurado y se mantiene la jerarquía de interceptores que ha establecido.
-
Si no ha implementado un método OPCIONS, los interceptores configurados en el recurso all/all se ignoran y el recurso no los hereda.
Como estándar, las respuestas a las solicitudes preflight contendrán los siguientes encabezados:
clave: valor
Access-Control-Allow-Origin: * Access-Control-Allow-Methods: HEAD, DELETE, POST, GET, OPTIONS, PUT, PATCH
Si en la solicitud preflight llegar el encabezado access-control-request-headers, la respuesta incluirá su contenido en el encabezado de clave-valor access-control-allow-headers.
Share your suggestions with us!
Click here and then [+ Submit idea]