pilas-engine

Como usar la función fetch

Hola buenas noches, queria saber como puedo utilizar fetch para consumir una api propia , ya que no pude encontrarle la vuelta, desde ya muchas gracias

Pude traer datos desde la api de pokemon usando XMLHttpRequest

Ahhh, genial, justo te iba a consultar si la api realmente te estaba retornando datos o no.

Dame unos minutos que te armo un ejemplo usando la función fetch.

Hola @bernardisApps, te armé un pequeño ejemplo usando la función fetch. Hice un actor que le solicita a github (a través de su api), cual es la versión más reciente de pilas y lo muestra en pantalla:

Abrir este proyecto en el editor de pilas

A diferencia de XMLHttpRequest, la función fetch utiliza algo llamado promesas, lo que permite hacer que el código se pueda escribir de forma un poco más sencilla. En lugar de usar algo como AddEventListener se puede “pausar” el código y escribirlo de forma más lineal.

Se que suena medio chino, pero en el código es más fácil de seguir.

Lo primero a tener en cuenta es que hagas que el método que llama a la api sea async así:

Una vez que el método es async, vas a poder usar la palabra “await” en cada linea de código que retorne una promesa:

image

También ten en cuenta que fetch te retorna un objeto response, así que hay que convertirlo a json para poder leerlo.

Y el resto del código es básicamente para manejar errores, creo que hay formas más compactas de validar errores, pero no llegué a investigarlo. Vi que hay varios videos en youtube que explican todo lo que se puede hacer con esa función, por ejemplo este:

Igual, para tu juego que solicita datos a la api de pokemones creo que te puede servir la misma forma que usé yo en el ejemplo.

¡ Avisame si te sirve el ejemplo !

Muchas gracias hugo! algo ya habia trabajado con fetch , no sabia como utilizarlo en pilas y la duda quedo despejada, justo habia hecho algo asi :

pero con fetch es mucho mas facil! muchas gracias!