Tengo un malentendido con respecto al encabezado Access-Control-Allow-Origin
de CORS.
Su nombre dice "permitir", y entiendo que si hago una solicitud desde un "Origen" que no está permitido, la solicitud debe fallar.
Pero siempre puedo cambiar /etc/hosts
para que el "Origen" apunte a mi dirección IP.
Por ejemplo, para una respuesta que podría contener esto:
Access-Control-Allow-Credentials: true
Access-Control-Allow-Origin: http://example.com
Access-Control-Expose-Headers: Access-Control-Allow-Origin,Access-Control-Allow-Credentials
Siempre puedo modificar /etc/hosts
y tengo:
127.0.0.1 example.com
... y la llamada funcionará.
¿Qué está permitiendo exactamente este encabezado? ¿Puedo usar Access-Control-Allow-Origin: *
en lugar de Access-Control-Allow-Origin: http://example.com
? ¿Cuál es la diferencia?