Dado que la validación de XSRF implica la coincidencia de la cookie/token enviada en la solicitud de la interfaz de usuario con el encabezado de la solicitud como parte de esa misma solicitud, ¿cuáles son las opciones para probar localmente? Entonces, suponiendo que ejecuto mi interfaz de usuario localmente y apunto a un servidor alojado en un lugar diferente, la cookie nunca podrá leerse en localhost (ya que es un host diferente). ¿Cuál es la mejor práctica en este caso? ¿Agregar lógica en el servidor para identificar el origen y omitir la verificación si Origin es localhost?
Lo que suelo hacer en tal caso es usar /etc/hosts y usar un subdominio para que mi código se ejecute localmente. Por ejemplo, la interfaz de usuario se ejecuta en www.example.com y el servidor está en api.example.com , luego en mi archivo de hosts apunto www.example.com a localhost.
Si las cookies no son cookies del mismo sitio y el servidor tiene la configuración adecuada de CORS, entonces, de hecho, no debería ser un problema usarlas desde localhost. Su interfaz de usuario no tendrá acceso a ellos, pero el navegador debe enviarlos junto con cualquier solicitud al servidor. (CORS debería permitir credenciales y el cliente http de su interfaz de usuario debería usar algo como withCredentials: true flag)