Estoy usando fetch para realizar solicitudes al backend de mi aplicación, que usa un proveedor de autenticación OAuth.
Cuando la sesión caduca, la solicitud de recuperación se redirige al proveedor de autenticación, lo que provoca que falle debido a un error de CORS (que no puedo cambiar).
En este caso, fetch lanza un TypeError: failed to fetch . Desafortunadamente, también obtengo un TypeError: failed to fetch , cuando la red está inactiva o la solicitud se agota por otro motivo.
¿Cómo puedo discriminar de manera confiable entre estos modos de falla?
No he encontrado ninguna propiedad útil en el TypeError arrojado, que permitiría distinguir estas fallas.
Es posible capturar redireccionamientos usando la opción redirect: "manual" .
fetch(url, {redirect: "manual"})Si bien no es posible capturar la URL de redirección por motivos de seguridad, esta es una resolución aceptable para mí en este momento.