Debes hacer este ejercicio después de la aplicación de la TODO list con React porque la primera parte es el boilerplate perfecto para comenzar a usar APIs.
Para esta segunda parte, sincronizaremos nuestra lista de tareas con una base de datos real, usando la siguiente API RESTful y API pública realizada para este ejercicio.
🔗 Clic aquí para acceder a la documentación de la API del TODO-list.
👉 Aqui hay un video explicando como usar el TODO-List API con Fetch.
Todo este ejercicio se trata de la programación asíncrona porque las interacciones desde y hacia el servidor deben realizarse de forma asíncrona. De esa manera, el usuario no tiene que esperar a que llegue la información.
No clones este repositorio porque vamos a usar una plantilla diferente.
Recomendamos abrir el react boilerplate
usando un entorno de desarrollo como Codespaces (recomendado) o Gitpod. Alternativamente, puedes clonarlo en tu computadora local usando el comando git clone
.
Este es el repositorio que necesitas abrir o clonar:
1https://github.com/4GeeksAcademy/react-hello
👉 Por favor sigue estos pasos sobre cómo comenzar un proyecto de programación.
💡 Importante: Recuerda guardar y subir tu código a GitHub creando un nuevo repositorio, actualizando el remoto (
git remote set-url origin <your new url>
) y subiendo el código a tu nuevo repositorio usando los comandosadd
,commit
ypush
desde la terminal de git.
👉 Momentos clave para la integración:
Cargar tareas al iniciar (useEffect
)
GET
especificado en la documentación para obtener la lista y actualiza el estado que guarda la lista de tareas.Agregar una tarea.
POST
especificado en la documentación para añadir una nueva tarea y luego, usa GET
para actualizar la lista de tareas.Eliminar una tarea
DELETE
para eliminar una tarea y luego GET
para actualizar la lista.Asegúrate de crear un usuario antes de añadir tareas.
Utiliza el siguiente fetch call para crear una nueva tarea en el servidor. Recuerda crearte un usuario primero.
1fetch('https://playground.4geeks.com/todo/todos/alesanchezr', { 2 method: "POST", 3 body: JSON.stringify(task), 4 headers: { 5 "Content-Type": "application/json" 6 } 7 }) 8 .then(resp => { 9 console.log(resp.ok); // Será true si la respuesta es exitosa 10 console.log(resp.status); // El código de estado 201, 300, 400, etc. 11 return resp.json(); // Intentará parsear el resultado a JSON y retornará una promesa donde puedes usar .then para seguir con la lógica 12 }) 13 .then(data => { 14 // Aquí es donde debe comenzar tu código después de que finalice la búsqueda 15 console.log(data); // Esto imprimirá en la consola el objeto exacto recibido del servidor 16 }) 17 .catch(error => { 18 // Manejo de errores 19 console.log(error); 20 });
⚠️ Para cualquier otra solicitud, debes cambiar las variables en el fetch: La URL, el método y el payload.
Este y otros proyectos son usados para aprender a programar por parte de los alumnos de 4Geeks Academy Coding Bootcamp realizado por Alejandro Sánchez y muchos otros contribuyentes. Conoce más sobre nuestros Cursos de Programación para convertirte en Full Stack Developer, o nuestro Data Science Bootcamp.