Curso JavaScript: 108. AJAX: API Fetch + Async-Await -

  Рет қаралды 21,498

jonmircha

jonmircha

Күн бұрын

En este video te explico la #API #Fetch usando funciones asíncronas (#AsyncAwait) de #JavaScript, una forma moderna de #AJAX.
💛 Aprende JavaScript aprendejavascr...
📖 Mis notas sobre JavaScript jonmircha.com/...
📖 Mis notas sobre ECMAScript jonmircha.com/...
📖 Mis notas sobre JavaScript Asíncrono jonmircha.com/...
📖 Mis notas sobre JSON jonmircha.com/...
📖 Mis notas sobre el DOM jonmircha.com/dom
📖 Mis notas sobre AJAX jonmircha.com/...
📦 Códigos: github.com/jon...
🔔 Suscríbete al canal kzbin.info... 🤓
👉 Visita mi sitio web jonmircha.com/ 💻
🌮 ¿Me invítas un taco? www.paypal.me/...
🤲 Apóyame en Patreon / jonmircha
📫 Suscríbete a mi lista de correo tinyletter.com...

Пікірлер: 144
@admergabrielvasquezusuvilc8458
@admergabrielvasquezusuvilc8458 4 жыл бұрын
si funciona poner el operador ternario json = await (res.ok ? res.json() : Promise.reject(res)); para poder manipular el error , bueno ami me funciono Grande el profesor Jon Mircha genio
@fabriciojoelmirandaquezada3819
@fabriciojoelmirandaquezada3819 2 ай бұрын
Buena observacion amigo, lo revise y es cierto si funciona
@luisfernandomorales9584
@luisfernandomorales9584 3 ай бұрын
El mejor curso si quiere aprender JavaScript
@jonmircha
@jonmircha 3 ай бұрын
👋🏻😉
@yohnlevistabaresbedoya2235
@yohnlevistabaresbedoya2235 3 жыл бұрын
Definitivamente no se como le haces para explicar tan bien, es el mejor curso de programacion que he estado. ¡Muchas gracias! Saludos desde Colombia
@jonmircha
@jonmircha 3 жыл бұрын
;D
@jesusmar-s8h
@jesusmar-s8h 11 ай бұрын
para mi sin duda alguna eres el mejor profesor de todos los cursos que he visto hasta ahora incluidos los de pago así que te tendré en cuenta cuando vaya a realizar un curso. He hecho varios cursos en Udemy un saludo y enhorabuena
@jonmircha
@jonmircha 11 ай бұрын
👋🏻😉
@AlejandroGuerrero
@AlejandroGuerrero 3 жыл бұрын
¡Excelente explicación! Me he perdido cuando el throw tiene dos parámetros y luego el catch(err) recibe uno, pero ya veo que realmente el throw es un objeto con dentro dos parámetros. Gracias!
@jlopekkos2164
@jlopekkos2164 2 жыл бұрын
La verdad que entre los tres métodos vistos hasta ahora me quedo con este, los errores son mucho más fáciles de manejar, el código es más legible y es más sencillo de entender.Muchas gracias Jon por este asombroso curso, ya estoy deseando empezar con el de Reactjs 😜
@jonmircha
@jonmircha 2 жыл бұрын
😉👍🏻
@jerlandejoseph4350
@jerlandejoseph4350 2 жыл бұрын
throw es para lanzar errores u otras cosas para que sea capturado por el bloque catch(err){}.... Este curso es super intuitivo. Grasias john
@jonmircha
@jonmircha 2 жыл бұрын
Sí, para errores
@danielfabiani4468
@danielfabiani4468 Жыл бұрын
Buen día, gracias. Tuve que ir a repasar promises y async await. Y lo mas probable es que deba volver varias veces mas. Saludos
@jonmircha
@jonmircha Жыл бұрын
Mucha suerte
@admoises
@admoises 3 жыл бұрын
Mucho más entendible con async-await, que genial que expliques muchas formas de trabajar AJAX.
@jonmircha
@jonmircha 3 жыл бұрын
Con mucho gusto ;)
@javieraleagagarcia8193
@javieraleagagarcia8193 3 жыл бұрын
Buenas noches, felicitarlo primeramente, explica muy bien y un contenido que me costaba lo he asimilado muy bien. Sigo su curso y durante la realización de este video siguiendo su código, a la hora de mostrar en el HTML el mensaje de error me devuelve: "Error undefined: Ocurrió un error" (() => { const $fetchAsync = document.getElementById('fetch-async'); const $fragment = document.createDocumentFragment(); async function getData(){ try { let response = await fetch("assets/user.json"); let json = await response.json(); if(!response.ok) { status: response.status, statusText: response.statusText}; json.forEach(element => { const $li = document.createElement('li'); $li.innerHTML = `${element.name} -- ${element.email} -- ${element.phone}` $fragment.appendChild($li); }); $fetchAsync.appendChild($fragment); } catch (error) { console.log("Estoy en el error del catch de Async-Await", error); let message = error.statusText || "Ocurrió un error" $fetchAsync.innerHTML = `Error ${error.status} : ${message}`; } finally { console.log("Testing") } } getData(); })(); Este es mi código no se donde esta el error por el que me devuelve undefined. Disculpe si en la sección de comentarios no se debe poner código pero no sabia donde postearlo para que me ayude. Muchas gracias de antemano.
@jonmircha
@jonmircha 3 жыл бұрын
Si te dice undefined revisa en que linea, seguramente tienes un error de dedo enla definición del nombre de tu variable o función
@Wiiiiizard
@Wiiiiizard Жыл бұрын
🧙‍♂Muchas gracias!!! Buen curso!!!
@jonmircha
@jonmircha Жыл бұрын
Gracias por comentar
@nickname1000
@nickname1000 Жыл бұрын
Increible como siempre Micrhaaaa, vamos que cada vez se pone mas interesante. Gracias!
@jonmircha
@jonmircha Жыл бұрын
😉👍🏻
@alejandrohermitano1121
@alejandrohermitano1121 2 жыл бұрын
Tremendo curso!!
@jonmircha
@jonmircha 2 жыл бұрын
😉👍🏻
@Black_Coding
@Black_Coding Жыл бұрын
Estas últimas clases fueron demasiado buenas! La forma más moderna y "mejor" de buscar datos a una API es con esta última forma no? Muchas gracias por todo el contenido!
@jonmircha
@jonmircha Жыл бұрын
👍🏻
@davidromero6292
@davidromero6292 2 жыл бұрын
😃 ¡Muchas gracias por el aporte Jon! tengo mi CV online con mi colección de iconografía y ahora puedo llamar a todos mis iconos con Fetch-AA y mi archivo JSON (que también hice gracias a tus anteriores clases) y me he ahorrado un laaaaargo 'copy/paste' de etiquetas HTML. A seguir aprendiendo. Gracias de nuevo 🤓
@jonmircha
@jonmircha 2 жыл бұрын
😉👍🏻
@MartinExequielFuraca
@MartinExequielFuraca 2 жыл бұрын
Buenisimo Jon! Gracias!
@jonmircha
@jonmircha 2 жыл бұрын
Con gusto
@CristianRomero-up1nj
@CristianRomero-up1nj 3 жыл бұрын
9:18 "Voila". Mon ami son travail est magnifique. saludos desde bs as.
@jonmircha
@jonmircha 3 жыл бұрын
Gracias! 😊
@yanluisnunezlara319
@yanluisnunezlara319 Жыл бұрын
Me gusta que sea con el mismo ejemplo por qué entiendo mucho mejor
@jonmircha
@jonmircha Жыл бұрын
👋🏻😉
@cumpaMira
@cumpaMira 2 жыл бұрын
Muchas gracias profe!
@jonmircha
@jonmircha 2 жыл бұрын
Con mucho gusto
@leomax522
@leomax522 Жыл бұрын
Excelente explicación. Abrazo enorme y gracias por todo!! Seguimos difundiendo tus videos.
@jonmircha
@jonmircha Жыл бұрын
Mil gracias!👋🏻😉
@eder3232
@eder3232 3 жыл бұрын
buenisimo curso, gracias jon
@jonmircha
@jonmircha 3 жыл бұрын
Con gusto
@josemigueltrinidadr.329
@josemigueltrinidadr.329 3 жыл бұрын
¡Excelente explicación!
@jonmircha
@jonmircha 3 жыл бұрын
😉👍🏻
@instintoimagen
@instintoimagen 2 жыл бұрын
Excelente es este #curso de #javascript el mejor de youtube
@jonmircha
@jonmircha 2 жыл бұрын
Gracias. Saludos
@giovanniemilioramirezberro9640
@giovanniemilioramirezberro9640 3 жыл бұрын
excelente, curso.
@jonmircha
@jonmircha 3 жыл бұрын
😎👍🏻
@carlesbautista8293
@carlesbautista8293 3 жыл бұрын
Muy bien explicado Jon, si que es verdad que es mas limpio con fetch async-await, Gracias!!!
@jonmircha
@jonmircha 3 жыл бұрын
Totalmente!
@jhonimanuelsanchezsuarez3117
@jhonimanuelsanchezsuarez3117 Жыл бұрын
Excelente video. Esto es contenido de calidad. Gracias por tus aportes.👍🏼
@jonmircha
@jonmircha Жыл бұрын
Con mucho gusto
@alphaphantom3846
@alphaphantom3846 3 жыл бұрын
ya se vienen esos 80k subscriptores (al día de escribir este comentario el contador dice 79.200 😱😱) y sale el curso de HTML ... cuando hacer todos los cursos 🤯 gracias profe por tanto contenido de calidad y por volarnos la cabeza con tantas cosas interesantes a quienes queremos saber sobre este mundo de desarrollo 🥳
@jonmircha
@jonmircha 3 жыл бұрын
😉🙌🏻
@fernandoarroba331
@fernandoarroba331 2 жыл бұрын
Muy buen contenido
@jonmircha
@jonmircha 2 жыл бұрын
👌🏻
@dan_seb
@dan_seb 3 жыл бұрын
El mejor curso de JavaScript!!!
@jonmircha
@jonmircha 3 жыл бұрын
Muchas gracias!
@scopionsyomero
@scopionsyomero 3 жыл бұрын
Muy bueno la verdad!!
@jonmircha
@jonmircha 3 жыл бұрын
😉👍🏻
@z3r0krypt
@z3r0krypt 3 жыл бұрын
Es una nimiedad pero por si alguno le interesa añadí en el catch una comprobación para cuando el fetch se realiza vacío, que devuelve el error "undefined", sería lo siguiente: if(err.statusText === undefined) { $fetchAsync.innerHTML = `${err.message}`; } else { let message = err.statusText || "Ocurrio un error"; $fetchAsync.innerHTML = `Error ${err.status}: ${message}`; } Haciendo esto, en lugar de dar un error undefined nos lanza directamente el mensaje de error generado.
@jonmircha
@jonmircha 3 жыл бұрын
🤓👍🏻
@aronlife1098
@aronlife1098 2 жыл бұрын
🕹El try, catch, finally suena como un combo de videojuego🎮
@jonmircha
@jonmircha 2 жыл бұрын
jajaja
@carlosmedrano6077
@carlosmedrano6077 3 жыл бұрын
he visto 3 videos hasta ahora, excelente..contenido y explicación. Sigue..así..amigo
@jonmircha
@jonmircha 3 жыл бұрын
😉👍🏻 aprendejavascript.org/
@williamalexanderpineda6098
@williamalexanderpineda6098 Жыл бұрын
Muchas gracias
@jonmircha
@jonmircha Жыл бұрын
Gracias por comentar
@mis2michis726
@mis2michis726 Жыл бұрын
Gracias!!!!
@jonmircha
@jonmircha Жыл бұрын
😉👋🏻
@ciroalosa
@ciroalosa 4 жыл бұрын
Jonathan si quieres hacer peticiones a una API que requiere loguearse? O enviar cookies, sesión de usuario etc... Cómo se podría hacer? Muchas gracias por todo el curso! Es de lo mejor que he visto.
@jonmircha
@jonmircha 4 жыл бұрын
Para eso se usa el objeto de opciones de fetch, más adelante lo veremos
@ciroalosa
@ciroalosa 4 жыл бұрын
@@jonmircha gracias!!!
@carzmusicacreacionlecturac789
@carzmusicacreacionlecturac789 3 жыл бұрын
Excelente video, una gran claridad y profesionalismo de Jon Mircha
@jonmircha
@jonmircha 3 жыл бұрын
Muchas gracias!
@timawid
@timawid 11 ай бұрын
⭐️⭐️⭐️⭐️⭐️ Excellent ✅
@jonmircha
@jonmircha 11 ай бұрын
👋🏻😉
@denseydelgado3779
@denseydelgado3779 Жыл бұрын
gracias
@jonmircha
@jonmircha Жыл бұрын
😉👋🏻
@angeloruiz9344
@angeloruiz9344 3 жыл бұрын
muy buen curso profe muchas gracias
@jonmircha
@jonmircha 3 жыл бұрын
Con mucho gusto
@jorgerafaelcallejoflores67
@jorgerafaelcallejoflores67 4 жыл бұрын
Excelente profe!!!!
@yovanyescobarrojas2041
@yovanyescobarrojas2041 2 жыл бұрын
gracias profe por tus explicaciones , me parece mejor este forma de realizar las peticiones ajax y además es mucho mas corto y legible el código, yo me quedo con esta "metodología", saludos desde colombia.
@jonmircha
@jonmircha 2 жыл бұрын
👍🏻
@carloscontreras6051
@carloscontreras6051 2 жыл бұрын
A pedido del sensei, ayudando al posicionamiento😊 Que llegue a cada desarrollador, y futuro desarrollador
@jonmircha
@jonmircha 2 жыл бұрын
😃🙌🏻
@angelabrahamlopezdelgado7574
@angelabrahamlopezdelgado7574 2 жыл бұрын
Hola broy , me gustan las clases pero como estudiante he notado algo y pido tu consejo usar asyn await , lo que haces es esperar los datos , pero me puse a pensar si hacer extracion de datos y digamos eso dilata 5 o 10 s y usas await lo que haces es tu codigo mas ineficiente no digo que este mal pero eso lo he visto podias hacer un video explicando como mezclar promise y async 🥲 await
@jarrodvillalobos
@jarrodvillalobos 9 ай бұрын
El que no aprenda con tus cursos Jon es por que no quiere 🙂no hay mejor curso que este de Javascript de paso gratis y en Español muchas gracias
@jonmircha
@jonmircha 9 ай бұрын
👋🏻😉
@emersonpalaciootalvaro2632
@emersonpalaciootalvaro2632 4 жыл бұрын
excelente: sin palabras excelente 🤘🤘🤘🤘🤘🤘👍👍👍👍
@ElTripaSeca100
@ElTripaSeca100 Жыл бұрын
grande jon
@jonmircha
@jonmircha Жыл бұрын
😉👋🏻
@matiasgomez9416
@matiasgomez9416 3 жыл бұрын
Idolo!
@drbv27
@drbv27 3 жыл бұрын
Increible que hace mes y medio empece y ya voy en el video 108...wow,...genial Jon. Una Pregunta que fuente usas en tu VSCode que te queda todo tan compacto?
@jonmircha
@jonmircha 3 жыл бұрын
Aquí te dejo un artículo y video con toda mi config de VSCode jonmircha.com/vscode
@wi330601
@wi330601 2 жыл бұрын
Holaaa... una consulta, ya me me confunde un poco esto de los rest... con xmlhttprequest o fetch se los usa solo para acceder a datos que ofrecen terceros o tambien para cuando tengo que acceder a una base de datos propia que lo hago con php por ejm. y yo genero la consulta a la base y armo la respuesta en json?... Excelentes tus cursos Jon. Un abrazo y gracias por todo.
@dec111090
@dec111090 2 жыл бұрын
Hola Jon!!! Muy buen video!! Consulta: para el ejemplo de este video utilizas fetch con try-catch ¿seriá posible utilizar then-catch o el simple hecho de utilizar async-await obliga a utilizar try-catch?
@jonmircha
@jonmircha 2 жыл бұрын
No necesariamente es obligado, también podrías mezclar promesas con async - await
@GerdSa
@GerdSa 2 жыл бұрын
porque cuando en ves del throw, retornas un promise.reject no entra en el catch? cuando se hizo sin asyn await funcionab.
@jonmircha
@jonmircha 2 жыл бұрын
😮
@reyns8059
@reyns8059 3 жыл бұрын
y de que manera es mejor usar fetch? Da igual y puedes usar la forma que mejor entiendas o existen casos puntuales en los que sale mejor usar el async-await y otros en los que no? A mi particularmente me parecio un poco mas entendible sin el async porque, como estoy empezando, me parece mas facil ver el flujo del programa, la forma en que se ejecuta, se forma y que significa y de donde sale cada cosa a pesar de que si es medio molesto pensar en que puedes tener mil "then's", me parece que seria cuestion de acostumbrarse porque en realidad el async - await es como la version resumida y quizas por eso, que aun no me acostumbro ni conozco mucho, se me hizo mas complicado de ver. Estoy seguro que cuando llegue a la parte de los ejercicios ya entendere mejor esta parte
@jonmircha
@jonmircha 3 жыл бұрын
Depende lo que requieras, pero eso lo veremos en la sección de ejercicios destinados a AJAX y APIs ;)
@raulruidiazgoleadordeperu9524
@raulruidiazgoleadordeperu9524 3 жыл бұрын
No no async await son funciones asyncronas que son secuenciales.Promesas son asyncronas,en mi particular uso promise all mas.
@yasdesigner5166
@yasdesigner5166 4 жыл бұрын
Hola, me ha encantado este curso y he aprendido bastante, practicado en esta clase me sale este error en Visual Studio Code 'async functions' is only available in ES8 (use 'esversion: 8') como soluciono eso porq no me ejecuta la función
@NonsenseIsOver
@NonsenseIsOver 3 жыл бұрын
Profe, pregunta, ¿puede ser que incluso cuando fetch nos tire un 'ok' : 'false', de todos modos tendramos que parsear la respuesta a json, ya que el mensaje personalizado se encuentra en el body?
@jonmircha
@jonmircha 3 жыл бұрын
Depende de cada API, por eso es importante leer su documentación ;)
@NonsenseIsOver
@NonsenseIsOver 3 жыл бұрын
@@jonmircha Buenísimo profe, gracias!
@JB-pl8vj
@JB-pl8vj 3 жыл бұрын
Tremenda clase! Profe quería consultarle que Color Theme de Visual Studio Code utiliza, ya que en el mio me pone los parentesis, llaves y corchetes en blanco todos por igual y me gustaria poder darles color como el suyo asi me siento mas comodo visualmente! Desde ya muchas gracias
@jonmircha
@jonmircha 3 жыл бұрын
Aquí puedes ver mi configuración jonmircha.com/vscode
@JB-pl8vj
@JB-pl8vj 3 жыл бұрын
@@jonmircha muchas gracias Profe! Ahi lo vi!!
@helipalacio8772
@helipalacio8772 10 ай бұрын
👏👏👏🙏🙏🙏
@jonmircha
@jonmircha 10 ай бұрын
👋🏻😉
@jhonatansantofimio3764
@jhonatansantofimio3764 3 жыл бұрын
En que video puedo ver el método loading???
@jonmircha
@jonmircha 3 жыл бұрын
método loading???
@jhonatansantofimio3764
@jhonatansantofimio3764 3 жыл бұрын
@@jonmircha si que no muestre todo el sitio web hasta que todos los archivos han cargado
@jesusparra6714
@jesusparra6714 3 жыл бұрын
jon hice una prueba con el archivo json y cuando cambiaba algún dato para que ese datos se reflejara en la pagina tenia que actualizar el navegador, como hago para que cuando modifique ese dato lo refleje en la pagina si actualizar el navegador
@heimancastro1954
@heimancastro1954 Жыл бұрын
👏👏👏👏👏👏👏👏👏👨‍💻👨‍💻👨‍💻👨‍💻👨‍💻👨‍💻👨‍💻
@jonmircha
@jonmircha Жыл бұрын
😉👋🏻
@cagriostro4629
@cagriostro4629 2 жыл бұрын
Hermanito... una consulta... ando medio perdido... estas tegnologias de js, fetch, ajax, y axios, son individuales.. o tengo que usar ajax para usar fetch? quiero hacer un CRUD pero Que sea sin refrescar la pagina, la Edicion y agregar... con esto tendria que ver de hacer una ventana emergente...
@jonmircha
@jonmircha 2 жыл бұрын
Fetch es un Ajax moderno
@EXRILOT
@EXRILOT 2 жыл бұрын
profe, cuando pongo console.log(err) dentro del catch, me sale "SyntaxError unexpected token < in JSON at position 0" una vez que corrijo la url todo sale bien, pero cuando mostrar el error me sale eso
@jonmircha
@jonmircha 2 жыл бұрын
😮
@willmend6096
@willmend6096 4 жыл бұрын
Maestro por que suele meter los eventos o los callback en (), pero algunas veces no?
@jonmircha
@jonmircha 4 жыл бұрын
NO te entiendo, ponme un ejemplo para saber a que te refieres
@sebastiangonzalez-wj1fj
@sebastiangonzalez-wj1fj 3 жыл бұрын
creo que te refieres a esto ( res =>{}) y aveces ( (res) =>{}), es indiferente siempre que sea un solo parámetro el que pasas, de nuevo si pasas UN solo parámetro como en este caso "res" puedes muy bien encerrarlo en paréntesis o no, pero si son mas de dos, si tienes que encerrar obligatoriamente los parámetros en paréntesis, ejemplo ( (res,error)=>{}), siempre que sean mas de dos, tres, cuatro y así llevan paréntesis obligado. puedes ver este video con mas detalles del mismo jon, kzbin.info/www/bejne/jaamqGyXnLtmiMU
@willmend6096
@willmend6096 3 жыл бұрын
@@sebastiangonzalez-wj1fj gracias ya lo tengo claro, pero esto ha de servir para alguien más 🤘🤘🤘🤘
@helipalacio8772
@helipalacio8772 5 күн бұрын
👨
@jonmircha
@jonmircha 4 күн бұрын
👋🏻😉
@josebracho1672
@josebracho1672 4 жыл бұрын
Profesor una pregunta, porque cuando fetch me lanza un error no sigue la linea de abajo y se va directamente al catch?
@jonmircha
@jonmircha 4 жыл бұрын
Justamente ese es el funcionamiento del catch, cuando detecta error la Promesa canaliza el flujo al catch
@josebracho1672
@josebracho1672 4 жыл бұрын
@@jonmircha Gracias por responder profesor, yo me estaba refiriendo a que no me deja manipular el mensaje de error, no se si deba modificar otra cosa?
@jonmircha
@jonmircha 4 жыл бұрын
@@josebracho1672 Debes agregar la validción del res.ok y rechazar la Promesa para que puedas manipular el error en el catch :)
@alejandrosaldarriaga4750
@alejandrosaldarriaga4750 2 жыл бұрын
Bro tenes un lugar reservado en el cibercielo jajajaj (Y)
@jonmircha
@jonmircha 2 жыл бұрын
🙈😃
@monsterleagueescritas
@monsterleagueescritas 2 жыл бұрын
A nooo ya se porque xD 14:43
@aviellisandrovasquezreyes1172
@aviellisandrovasquezreyes1172 2 жыл бұрын
:D
@jonmircha
@jonmircha 2 жыл бұрын
😉
@Leoutn
@Leoutn Жыл бұрын
ho si , si duda el cursos mas compoleto que en español
@jonmircha
@jonmircha Жыл бұрын
😉👋🏻
@hardisonpaulino8846
@hardisonpaulino8846 Жыл бұрын
🫵😎👏👏👏👏🫶
@jonmircha
@jonmircha Жыл бұрын
👋🏻😉
@sandokanArg
@sandokanArg 4 жыл бұрын
Llegue tarde hoy
@edwingm933
@edwingm933 2 жыл бұрын
el único que me sirvió fue este jajajajj, por fi, ya me estaba desesperando
@ciroalosa
@ciroalosa 4 жыл бұрын
Gracias!
Curso JavaScript: 109. AJAX: Librería Axios - #jonmircha
16:03
Qué es AJAX y como funciona
4:33
Platzi
Рет қаралды 295 М.
Worst flight ever
00:55
Adam W
Рет қаралды 10 МЛН
DEVflexiones 🤔 Deshazte de las navajas suizas - jonmircha
13:43
Por qué JS "necesita" async-await y otros lenguajes no?
21:42
Antonio Sarosi
Рет қаралды 69 М.
Cómo TIPAR Componentes en React con ComponentProps
12:49
José Ángel Hdz Rda
Рет қаралды 1,3 М.
Curso JavaScript: 48. Async - Await - #jonmircha
18:41
jonmircha
Рет қаралды 45 М.