¿En qué orden se ejecuta una petición Fetch?

Autor: | Última modificación: 2 de noviembre de 2022 | Tiempo de Lectura: 3 minutos
Temas en este post:

A la hora de escribir código con procesos asíncronos, el orden en que se ejecutarán nuestras líneas de código cambiará. En este post, te enseñaremos en qué orden se ejecuta una petición Fetch cuando llamamos a datos de una API.

Ejemplo de en qué orden se ejecuta una petición Fetch

Con el fin de explicarte en qué orden se ejecuta una petición Fetch, tomaremos de ejemplo un código similar al que hemos escrito en nuestro post sobre traer datos de una API con Fetch:

getData ( ) {

const url = «https://urldeunAPIinvestado.com»

fetch (url)

.then (responseHttp) => {…

})

.catch (error) => {…

})

.then (tweets) => {…

});

console.log (‘hola’);

},

};

Como puedes ver en las líneas de código anteriores, hemos definido una función getData con una constante url en la que se guarda el enlace de una API inventada. Luego, siguiendo la estructura de peticiones HTTP con Fetch, hemos insertado esta constante como parámetro del método fetch para hacer una petición a esta URL. Ya que las peticiones de esta clase son procesos que pueden tomar un tiempo indeterminado, las peticiones con Fetch devuelven una promesa, que podemos controlar con métodos como then y catch.

Para este contexto, no es relevante qué se ha hecho en cada método de control de promesas, pues finalmente nos importa más el orden en el que se ejecuta que el código que lo ejecuta. Sin embargo, en términos generales, el código anterior transforma la respuesta HTTP a un json en el primer then, luego captura el error en el catch y pinta los tweets en pantalla (la base de datos de nuestro proyecto de ejemplo).

Al final del control de esta promesa, hemos agregado un console.log de un simple «hola» dentro de la función getData. ¿Por qué? Pues para poder revisar exactamente en qué orden se ejecuta una petición fetch.

¿En qué orden se ejecuta una petición Fetch?

Ahora que tenemos nuestro ejemplo y la línea de código que comprobará en qué orden se ejecuta una petición HTTP, podemos revisar lo que sucede. Para ello, te recomendamos tener abierto el inspector de tu navegador para ver el orden de ejecución e la consola. Si tienes dudas sobre cómo funciona esta herramienta, te invitamos a leer nuestro post sobre cómo funciona el inspector web.

Entonces, ¿qué saldrá primero por consola? ¿El hola o los tweets? La respuesta correcta es el hola. Esto sucede porque, como te mencionamos antes, Fetch es un método asíncrono. Por ello, su ejecución depende de que la llamada HTTP se resuelva. En este sentido, el intérprete de JavaScript leerá la constante URL y continuará. Luego, leerá el método fetch y sabrá que tiene que ejecutar la petición HTTP. Entonces, por el momento hará la petición y esperará a que se resuelva para ver qué hace con ella.

Mientras la petición HTTP se ejecuta, el intérprete JavaScript sigue leyendo nuestro código. ¿Y qué sigue? Pues el console.log de «hola». Entonces, el intérprete lo pintará. Luego, cuando la petición se resuelva, volverá a revisar los métodos then y catch y los ejecutará en función del resultado.

¿Qué sigue?

Ahora que sabes en qué orden se ejecuta una petición Fetch, te invitamos a utilizar este método para hacer peticiones HTTP en tus propios proyectos. Por ello, te recomendamos nuestro Desarrollo Web Full Stack Bootcamp, un espacio de formación intensiva donde aprenderás la teoría y la práctica para desarrollar todo tipo de proyectos web. ¡No te lo pierdas y solicita información!

👉 Descubre más del Desarrollo Web Full Stack Bootcamp ¡Descarga el temario!

👉 Prueba el Bootcamp Gratis por una Semana ¡Empieza ahora mismo!

👉 Conoce nuestros otros Bootcamps en Programación y Tecnología

[email protected]

¿Trabajo? Aprende a programar y consíguelo.

¡No te pierdas la próxima edición del Aprende a Programar desde Cero Full Stack Jr. Bootcamp!

 

Prepárate en 4 meses, aprende las últimas tecnologías y consigue trabajo desde ya. 

 

Solo en España hay más de 120.400 puestos tech sin cubrir, y con un sueldo 11.000€ por encima de la media nacional. ¡Es tu momento!

 

🗓️ Próxima edición: 13 de febrero

 

Reserva tu plaza descubre las becas disponibles.

¿Sabías que hay más de 40.000 vacantes para desarrolladores web sin cubrir en España? 

En KeepCoding llevamos desde 2012 guiando personas como tú a áreas de alta empleabilidad y alto potencial de crecimiento en IT con formación de máxima calidad.

 

Porque creemos que un buen trabajo es fuente de libertad, independencia, crecimiento y eso ¡cambia historias de vida!


¡Da el primer paso!