Tutorial API REST en ExpressJS y con Base de Datos SQL

Поделиться
HTML-код
  • Опубликовано: 31 дек 2024

Комментарии • 53

  • @jesusgregoriosola5871
    @jesusgregoriosola5871 2 месяца назад

    Mi estimado, has hecho un gran trabajo en este vídeo que lo he apreciado muchísimo puesto que me ha aclarado términos y conceptos que antes no entendía… however my friend… cuando explicas, te mueves como una auténtica pulga, saltas de un tema a otro constantemente y es muy difícil seguirte; en resumidas cuentas, que deberías hacerte un Planig escrito para abordar los temas en la medida que van surgiendo: por ejemplo: bueno, ahora vamos a ver… cómo montamos nuestro servidor y para ello necesitaremos tal, tal y tal ítem, y cuando hayamos terminado de montarlo, veremos cómo efectuamos la conexión y ahora empezamos a probarlo… pero sin salirte ni abandonar el tema y moviendo el puntero más despacio para que veamos lo que haces, a fin de que no tengamos que atrasar y adelantar el vídeo tantas veces para no perdernos en esa ensalada de temas que explicas a la vez. Por lo demás me ha gustado mucho el asunto que tratas y te estoy muy agradecido porque valoro tu trabajo. Saludos desde Zaragoza (España).

  • @viva_frank
    @viva_frank Год назад +2

    Excelente canal "Código Morsa". gracias por el conocimiento que compartes, saludos desde Ciudad de México

  • @renecabrera8927
    @renecabrera8927 3 года назад +3

    Buenísimo video, estoy viejito aprendiendo desarrollo, pero con tus videos se ha hecho menos árido el camino.

    •  3 года назад +1

      Sigue así, me alegro poder ayudar.

  • @gonzalonrd
    @gonzalonrd 2 года назад +1

    Que bien explicas, se nota experiencia, se nota trabajo duro igual. Gracias de verdad, buen videooooo, from Chile

    •  2 года назад

      Muchas gracias por el apoyo.

  • @nistraletras
    @nistraletras 3 года назад +1

    Desde Ecuador. Un saludo! Buen tutorial, la explicación estuvo excelente!
    Me sigo motivando a progresar con tus vídeos para ser Software Developer.
    Tengo ciertas bases pero estoy en la práctica con proyecto propio, este tuto me ayudó a comprender más de express

  • @sigalaLuz
    @sigalaLuz 3 года назад

    Gracias Morsa🦭!!! Todavía ni termino de verlo pero ya estoy contenta... explicas todo muy claro! En general los tutoriales se dirigen hacia un solo nivel de expertise, pero tú logras hacernos avanzar a novatos y a más avanzados...
    Gracias y saludos 🤗

    •  3 года назад +1

      Muchas gracias por el apoyo!

  • @alvarodiaz-mp4it
    @alvarodiaz-mp4it Год назад +1

    Muy buena explicación para los apasionados en este camino, animo bro!

  • @quinojuan2
    @quinojuan2 2 года назад

    Me gusta muchísimo la forma de explicar los temas. Te voy a recomendar. Saludos!

    •  2 года назад

      Muchas gracias por el apoyo!

  • @rafaelmeza9942
    @rafaelmeza9942 3 года назад

    Desde Colombia, muchas gracias por compartir tus conocimientos 🤙🏽🤙🏽

  • @lococaturro3329
    @lococaturro3329 2 года назад +3

    excelente video, podrias explicar de como tu api ahora la pasa a front end para que interactuen los usuarios, que recomiendas?? gracias

  • @SolaPazEnergy
    @SolaPazEnergy 8 месяцев назад

    Extraordinario trabajo amigo. Me ha aclarado muchas ideas de las que tenía un concepto equivocado. Sólo una consulta ¿me vale este planteamiento para trabajar con la DB Firebird. Gracias y saludos

  • @EllieT7
    @EllieT7 3 года назад

    Muchas gracias por tus tutoriales, realmente son geniales!

  • @gabrielgarzon9714
    @gabrielgarzon9714 Год назад +1

    eres el maximo

  • @Apache90
    @Apache90 Год назад

    Muy buen video! gracias por la clase crack

  • @alejandrocruzz2
    @alejandrocruzz2 2 года назад

    Joya.

  • @juandavidvergaportillo4907
    @juandavidvergaportillo4907 2 года назад

    Como se usa async awuit en la promesa

  • @ValenGames1
    @ValenGames1 2 года назад

    Buen video, muy bien explicado. Saludos!

  • @ricardozepper2047
    @ricardozepper2047 2 года назад

    excelente video, estoy estudiando programación y me gustaría ver el crud completo pero con procedimientos almacenados. Saludos

  • @danielomarzanandrea8723
    @danielomarzanandrea8723 Год назад +1

    Muy bueno el video , bien explicado , pero el recuadro de tu figura no permite ver bien todo. Igual brillante..!!

  • @jeanpiermadridbonilla4877
    @jeanpiermadridbonilla4877 4 месяца назад

    twe amo

  • @Baltss
    @Baltss Год назад

    amigo necesito ayuda!! Me sale que el databaseService ya fue importado y tengo todo igual que vos. Nose si sera por alguna actualizacion de version de alguna dependencia que cambio la syntaxis o q pero no me deja. Ni bien puedas, si no es molestia para vos me respondes aqui y nos ponemos en contacto porfa

  • @930620david
    @930620david 3 года назад

    Genial el vídeo

  • @luchinilvp
    @luchinilvp 3 года назад

    Hola excelentes tus videos, yo estoy aprendiendo api con Flask, y luego quiero seguir con Django, mi pregunta es, son tecnologías que tienen futuro las de Python web??. Saludos desde Chile.

    •  3 года назад

      Si flask y Django tambien son tecnologias populares :) tienen futuro ✌🏾

  • @ItzelPalRe
    @ItzelPalRe Год назад

    Hola!, al momento de hacer el post en Postman me arroja esto {
    "name": "KnexTimeoutError"
    }

  • @jonathanespinozarodriguez2351
    @jonathanespinozarodriguez2351 2 года назад

    Se puede usar procedimientos almacenados?

  • @carlosrubio6449
    @carlosrubio6449 3 года назад

    Muy buen video. Una pregunta, cual es la diferencia entre un query builder y un ORM? Saludos

    •  3 года назад +2

      Excelente pregunta! Me inspiré en este artículo para usar un Query Builder blog.logrocket.com/why-you-should-avoid-orms-with-examples-in-node-js-e0baab73fa5/
      La gran diferencia que noto yo es que el ORM esconde más detalles de lo que sucede "por debajo" al momento de hacer consultas a la base de datos. Eso puede traer problemas cuando necesitamos hacer consultas complejas. En ese sentido, los Query Builder son mucho más transparentes, buscan mapear 1 a 1 las consultas que puedes hacer en la sintaxis SQL a metodos en el lenguaje de programación. Eso permite tener mucho más control sobre lo que estas consultando...

  • @dearalex2056
    @dearalex2056 3 года назад

    Interesante.

  • @jsr6941
    @jsr6941 2 года назад

    Que ORM recomiendan para node?

    •  2 года назад

      Nunca he usado uno, solo he usado el query builder que mostré en el video. He escuchado de sequelize y mongoose pero no se cual es el estado actualmente de éstos.

  • @tomascosta6292
    @tomascosta6292 2 года назад

    Buneas! el dotenv no me lee las variables de entorno, no sé qiue puede estar pasando la verdad, ya busqué en internet pero nada

    • @tomascosta6292
      @tomascosta6292 2 года назад

      Ya pude solucionarlo, habia puesto el archivo .env en la carpeta services. Pero ahora me sale otro error y es cuando hago la peticion post, no me reconoce el nombre de mi base de datos

    • @tomascosta6292
      @tomascosta6292 2 года назад

      Ya lo solucioné!

    •  2 года назад +1

      @@tomascosta6292 Que bueno es cuando uno se resuelve sus propias dudas jaja, felicitaciones y a seguir dándole.

    • @tomascosta6292
      @tomascosta6292 2 года назад

      @ muy bueno tu canal la verdad, seguí así crack!

  • @ImBackendDev
    @ImBackendDev 3 года назад +1

    Hola me interesa aprender typescript en uno de tus videos

    •  3 года назад

      Considerado! Lo anoto para un futuro próximo.

  • @cfstudio-cristhianfernandez
    @cfstudio-cristhianfernandez 2 года назад

    me sale el error que la tabla no existe ..¿Me podrías ayudar?

    •  2 года назад

      Podrían ser muchos factores, chequea que tienes el servidor mysql corriendo y que la tabla existe, tienes workbench instalado? Así puedes fácilmente abrir la tabla y ver que todo está en orden.

    • @cfstudio-cristhianfernandez
      @cfstudio-cristhianfernandez 2 года назад

      @ ya solucioné muchas gracias!!.... talvez tiene un vídeo explicando como enviar datos de un formulario... recién estoy aprendiendo a programar

    •  2 года назад

      @@cfstudio-cristhianfernandez Eso dale con todo vas por el buen camino, lo de formularios aún no he hecho tutoriales pero lo consideraré.

  • @vladimiryx2
    @vladimiryx2 3 года назад

    #codigomorsa

  • @hectordavidgomezpertuz2389
    @hectordavidgomezpertuz2389 2 года назад

    y si mi base de datos es MSSQL?

    •  2 года назад

      Solo tendrías que cambiar la implementación del servicio, el resto de los componentes debería ser capaz de usar esa interfaz sin problemas.

    • @hectordavidgomezpertuz2389
      @hectordavidgomezpertuz2389 2 года назад

      @ un tutorial con MSSQL sería una gran ayuda 😊

  • @eddie8161
    @eddie8161 2 года назад

    enseña super mal

  • @ChristianMoralesOnline
    @ChristianMoralesOnline 2 года назад

    Excelente video, superbien explicado!!!.
    Quisiera agregar las demás opciones del CRUD, como actualizar y borrar.
    Tendrías un ejemplo?? Este es mi intento de actualizar (código de databaseService.js)
    const actualizarUsuario = ({correoUsu, claveUsu, nombreUsu, apellidoUsu, idUsu}) => {
    return knex(table)
    .where(idUsu, '=', idUsu)
    .update({
    correoUsu: correoUsu,
    claveUsu: claveUsu,
    nombreUsu: nombreUsu,
    apellidoUsu: apellidoUsu
    }); // Retorna un Promise (Promesa)
    };
    y en routes.js:
    // Actualizar usuario
    app.put('/updUsu/:idUsu', (req, res) => {
    const usuario = req.body;
    console.log(usuario);
    databaseService.actualizarUsuario(usuario)
    .then(() => {
    res.json({"MENSAJE": "Usuario actualizado"});
    }).catch(e => {
    res.status(500).json(e);
    })
    });
    Pero obtengo error:
    "code": "ER_BAD_FIELD_ERROR",
    "errno": 1054,
    "sqlMessage": "Unknown column '4' in 'where clause'",
    "sql": "update `usuarios` set `correoUsu` = 'jack1@gmail.com', `claveUsu` = '1234561', `nombreUsu` = 'Carlos1', `apellidoUsu` = 'Perez1' where `4` = '4'"

    •  2 года назад +1

      Tu where en el return, el primer parametro lo esta interpretando como 4 y deberia ser idUsu, ponlo entre comillas para que lo lea como string, 'idUsu', '=', idUsu