Angular 2 avanzado: Trabajo con APIs

Actualizar resultados usando UPDATE

¡Prueba gratis durante 10 días

nuestros 1240 cursos !

Prueba gratis Mostrar modalidades de suscripción
El método UPDATE será utilizado en nuestra aplicación para actualizar un registro. Vamos a ver cómo podemos leer la información proveniente de un determinado URL y qué registro debemos actualizar, en base a la información obtenida en el paso anterior.
08:05

Transcripción

En esta lección vamos a aprender cómo actualizar la información de un registro dentro de una base de datos utilizando el método "put". Yo tengo acá una aplicación en la que estoy utilizando varios métodos de HTTP, por ejemplo "post", "get" y "delete". Voy a agregar uno nuevo, en este caso va a ser "put", y en general este método lo vamos a utilizar para modificar, de alguna forma, los elementos que se encuentren dentro de una base de datos. Yo voy a definir cuál va a ser la ruta y en este caso voy a utilizar una ruta dinámica, porque necesito identificar un registro dentro de mi base de datos. Así que voy a crear la ruta "api/ lista" y voy a definir un elemento dinámico utilizando dos puntos y en este caso voy a crear una variable que se va a llamar "ítem". Esto puede ser un término que se modifica de acuerdo a la información del usuario. Mientras el usuario entre dentro de "api/lista" y cualquier dato que ponga acá yo lo voy a capturar y lo voy a procesar dentro de la aplicación. Una vez que el usuario entre a esta ruta, nosotros vamos a darle una respuesta a través de esta función que voy a crear, donde voy a recibir dos parámetros, que van a ser "petición" y "respuesta". En este caso, para mejorar la compatibilidad tanto del método "put" como del método "delete", lo recomendable es que agreguemos un valor de configuración dentro de nuestra aplicación y podemos buscar... dentro del inicio de esta aplicación yo tengo una propiedad "configure", donde estoy agregando algunos valores adicionales de configuración, en este caso voy a incluir "app. use" y voy a definir que utilice la propiedad de "express. method Override", que va a mejorar la compatibilidad para estos dos métodos. Una vez que ya tengo definido este encabezado adicional, estoy preparado para seguir trabajando dentro de la llamada, en este caso al método "put". Voy a incluir dentro de esta llamada una invocación al modelo, en este caso, mi base de datos que se llama "lista", que ya he creado previamente dentro de mi aplicación. Y a esta base de datos "lista" yo le voy a asignar un método que es propio de Mongoose y voy a asignar "find One AndUpdate", que es un método que me va a permitir a mí, hacer una búsqueda definiendo unos parámetros específicos y una vez que tenga el resultado, obtener un registro, modificarlo y de nuevo obtener un resultado para desplegar en mi aplicación. Así que vamos a comenzar definiendo cuál va a ser el elemento que yo voy a modificar. En este caso tengo un error, es "find One AndUpdate". Este es el método correcto. Ahora, una vez definido el método, necesitamos definir cuál va a ser la condición de búsqueda. En este caso, yo voy a definir que se haga una búsqueda a través del parámetro "id". Esto es un valor único que solamente tiene un registro dentro de la base de datos, así que puedo estar seguro de que no va a haber ningún elemento repetido. También voy a llamar a la petición que me está haciendo el usuario y dentro de la petición voy a llamar a los parámetros y voy a llamar específicamente al parámetro "ítem", que es el que estoy recibiendo a través del URL. En este caso, debo recibir la identificación de un registro. Este objeto va a ser el criterio de búsqueda que vamos a tener para actualizar un registro. Una vez que lo hemos encontrado, también vamos a definir cuál va a ser el cambio que necesitamos. En este caso, yo quiero que la actualización que se haga dentro de mi API sea el cambio en un valor que se llama "terminado". Este valor "terminado", voy a definir que sea "true". Ahora "terminado" es un valor que no existe dentro de mi base de datos, lo acabo de inventar en este momento, así que voy a revisar dentro del modelo de mi base de datos y yo ya tengo definido un elemento que va a ser "texto", así que voy a agregar otro que se va a llamar "terminado" y lo voy a definir como de tipo booleano. Ahora yo ya sí tengo un espacio que se va a llamar "terminado" y que puede ser asignado como cierto o falso. En este caso, vamos a actualizarlo como cierto. Así que ya tenemos que este objeto va a tener una actualización en el campo "terminado" y vamos a definirlo como "true". Una vez que tengamos el resultado, vamos a también definir cuál va a ser la respuesta. Entonces, quiero que notes que acá he incluido una coma y una vez incluida esa coma, voy a definir también una función, que va a ser la respuesta que vamos a asignar en cuanto tengamos algún resultado desde la base de datos, o sea, cuando se ha encontrado un registro y se ha actualizado correctamente vamos a ejecutar esta función. Esta función va a recibir dos parámetros, el primero va a ser "error", el segundo va a ser "lista", donde vamos a obtener información de la base de datos. Entonces, vamos a definir que si tenemos un error, enviemos una respuesta al usuario diciéndole cuál fue el error y en caso contrario, vamos a hacer una invocación a la base de datos, en este caso "lista", vamos a hacer una búsqueda para obtener todos los valores y vamos a ejecutar una función. Esta función también va a recibir un posible error y un objeto "lista". Vamos primero a desplegar un mensaje de error en caso de que tengamos algún problema y voy a copiar y pegar el mensaje que ya tenemos previamente definido, y en caso de que todo funcione correctamente, vamos a llamar una respuesta y vamos a enviar en formato JSON la información que nos llega actualizada de la lista. Tenemos lista nuestra llamada utilizando el método "put". Ahora vamos a ir a una herramienta que tengo en uso dentro de Chrome, que me permite a mí interactuar utilizando diferentes métodos. Vamos a enviar información y vamos a ver la respuesta que me llega y veo que tenemos acá la información de dos registros. Vamos a tomar el "id" de uno de ellos, voy a copiarlo y voy a entrar utilizando el método "put" en la dirección "api/lista", y como hemos definido, también tengo que incluir el "id". Ahora la información que va a entrar va a ser un cambio dentro de la base de datos y vamos a hacer que el campo "terminado" aparezca como "true". Vamos a ver la respuesta y vemos que ya nos está apareciendo en el elemento que hemos modificado el elemento terminado como "true". En el caso de esta base de datos, si un registro no existe lo vamos a agregar automáticamente. Y de esta forma estamos actualizando los registros dentro de nuestra base de datos utilizando una API REST.

Angular 2 avanzado: Trabajo con APIs

Comprende el funcionamiento de una API y cómo llevar a cabo sus procesos, así como controlar su funcionamiento mediante Angular 2, gracias a este ejemplo práctico.

3:02 horas (29 Videos)
Actualmente no hay comentarios.
 
Software:
Formadores:
Fecha de publicación:4/05/2017
Duración:3:02 horas (29 Videos)

Este curso video2brain está disponible como descarga y para ser visualizado online. ¡Pero no hace falta que decidas entre las dos opciones! Al comprar el curso, disfrutarás de ambas posibilidades.

La descarga te permite ver las lecciones sin estar conectado/a a internet y supone una navegación fácil y ágil entre capítulo y capítulo. Si vas a trabajar en diferentes ordenadores o si no quieres descargarte el curso completo, entra en la web con tus datos de acceso y disfruta directamente de tus vídeos online. Te deseamos que disfrutes de este curso y te resulte de mucha utilidad.

Estamos a tu disposición si tienes cualquier tipo de duda o pregunta.