Web I - SPA y Ajax - Partial Render

WEB TUDAI
28 May 202123:46

Summary

TLDREl guion del video ofrece una explicación detallada sobre cómo utilizar AJAX para el render parcial de páginas web. Se discuten dos enfoques principales: el uso de fragmentos de sistema y la integración de servicios REST para obtener datos en formato JSON y procesarlos en el lado del cliente. El script incluye un ejemplo práctico donde se muestra cómo, al presionar un botón, se puede cargar y insertar un fragmento de HTML sin necesidad de recargar la página. Se abordan conceptos clave como las promesas, el uso de 'fetch' para realizar solicitudes al servidor y cómo manejar respuestas exitosas o fallidas. Además, se menciona la importancia de comprobar el código de estado HTTP en las respuestas para gestionar situaciones como la no existencia de una página o errores de servidor.

Takeaways

  • 😀 La segunda parte del video trata sobre AJAX y cómo se utiliza para el render parcial de páginas sin recargar la página completa.
  • 🔍 Se mencionan dos formas de render: uno es cargar un fragmento del sistema y otro es utilizar servicios REST para obtener datos en formato JSON y procesarlos en el lado del cliente.
  • 🛠 Se da un ejemplo práctico de cómo hacer click en un botón para mostrar un fragmento de HTML, obteniendo el contenido desde un enlace específico.
  • 📝 Se describe el proceso paso a paso para implementar el render parcial, incluyendo la creación de HTML y la adición de un evento al botón que desencadena la carga del fragmento HTML.
  • 🔗 Se explica cómo utilizar el método `fetch` para realizar una solicitud al servidor y obtener un archivo, y cómo manejar la respuesta de forma asíncrona con promesas.
  • 👉 Se destaca la importancia de manejar tanto la resolución como el rechazo de las promesas, implementando los bloques `.then()` y `.catch()` respectivamente.
  • 🌐 Se menciona que `fetch` es una interfaz estándar implementada en la mayoría de los navegadores modernos, lo que facilita su uso en desarrollo web.
  • 📚 Se proporciona información sobre cómo manejar errores y respuestas HTTP específicas, como el código 404 (no encontrado) y 500 (error interno del servidor).
  • 📖 Se sugiere la revisión de la documentación de MDN (Mozilla Developer Network) para obtener más información sobre `fetch` y su uso.
  • 🔧 Se discute la necesidad de refactorizar el código para evitar repetir código y mantener una estructura limpia y eficiente.

Q & A

  • ¿Qué es AJAX y cómo se relaciona con el parcial render de páginas web?

    -AJAX (Asynchronous JavaScript and XML) es una técnica que permite actualizar parte de una página web sin necesidad de recargar toda la página. Se relaciona con el parcial render porque permite cargar y insertar fragmentos de HTML desde el servidor sin interrumpir la experiencia del usuario.

  • ¿Cuál es la diferencia entre un render de páginas y un servicio REST?

    -El render de páginas implica cargar un fragmento del sistema y insertarlo en el HTML existente. Por otro lado, un servicio REST (Representational State Transfer) se enfoca en obtener datos del servidor en formato JSON y procesarlos en el lado del cliente.

  • ¿Cómo se implementa el render parcial utilizando AJAX?

    -Para implementar el render parcial con AJAX, se crea un evento en un botón que, al ser presionado, realiza una petición al servidor para obtener un fragmento de HTML. Este fragmento se inserta en la página sin necesidad de recargarla.

  • ¿Qué es el método 'fetch' y cómo se utiliza en el contexto de AJAX?

    -El método 'fetch' es una interfaz de JavaScript que permite realizar solicitudes HTTP al servidor y manejar la respuesta. En el contexto de AJAX, se utiliza para obtener datos del servidor y procesarlos en el lado del cliente sin recargar la página.

  • ¿Qué es una promesa en JavaScript y cómo se relaciona con el método 'fetch'?

    -Una promesa en JavaScript es un objeto que representa el resultado de una operación asíncrona. El método 'fetch' devuelve una promesa que contiene la respuesta de la solicitud HTTP. Se puede utilizar para manejar el éxito o fracaso de la operación de forma asíncrona.

  • ¿Cómo se maneja el contenido HTML obtenido mediante 'fetch'?

    -El contenido HTML obtenido mediante 'fetch' se maneja a través de la propiedad 'text' de la respuesta. Esta propiedad es también una promesa que, una vez resuelta, devuelve el contenido HTML que se puede insertar en la página.

  • ¿Qué navegadores soportan la interfaz 'fetch' y cómo se puede verificar su implementación?

    -La interfaz 'fetch' está implementada en los navegadores más comunes como Firefox, Chrome y Safari. Para verificar su implementación, se puede consultar la documentación de soporte de cada navegador o utilizar herramientas de desarrollo para comprobar su presencia.

  • ¿Cómo se maneja un error en la solicitud AJAX utilizando 'fetch'?

    -Para manejar errores en una solicitud AJAX con 'fetch', se puede utilizar el método 'catch' que captura cualquier rechazo de la promesa. También se puede comprobar el código de estado HTTP en la respuesta para determinar si la solicitud fue exitosa o no.

  • ¿Qué es un estado de promesa y cuáles son los cuatro estados posibles de una promesa en JavaScript?

    -Un estado de promesa en JavaScript indica la situación actual de una operación asíncrona. Los cuatro estados posibles son: cumplida (fulfilled), rechazada (rejected), pendiente (pending) y finalizada (settled).

  • ¿Cómo se implementa la gestión de errores en el ejemplo proporcionado del script?

    -En el ejemplo del script, la gestión de errores se implementa mediante un bloque 'catch' que maneja los rechazos de promesa. También se comprueba el código de estado HTTP en la respuesta para mostrar un mensaje de error si la página solicitada no existe o hay algún otro problema.

  • ¿Cómo se puede mejorar la experiencia del usuario al utilizar AJAX para el render parcial de la página?

    -Para mejorar la experiencia del usuario, se pueden implementar técnicas como evitar el reflejo de la página al hacer clic en un botón, mostrar mensajes de carga o error adecuados y asegurarse de que la transición entre el contenido antiguo y el nuevo sea fluida y sin interrupciones.

Outlines

00:00

😀 Introducción a AJAX y Render Parcial

El primer párrafo introduce la segunda parte de un tema, enfocándose en AJAX y la renderización parcial de páginas. Se mencionan dos métodos principales: cargar un fragmento del sistema y insertarlo en el HTML, y utilizar servicios REST para buscar datos en el servidor y procesarlos en el cliente. Se describe un ejemplo práctico donde se presiona un botón para mostrar un fragmento de HTML sin necesidad de recargar la página, y se detalla el proceso paso a paso, desde la creación del HTML hasta la adición de un evento al botón que desencadena la carga del fragmento HTML desde un enlace específico.

05:01

🔗 Utilización de fetch para la carga asíncrona de datos

El segundo párrafo se enfoca en el uso de la función 'fetch' para realizar peticiones asíncronas y cargar datos de forma parcial a una página web. Se explica que 'fetch' devuelve una promesa y cómo se puede utilizar para obtener el HTML de un recurso y reemplazar una porción del documento con dicho contenido. Se muestra un ejemplo de código donde se agrega un evento de clic a un botón que, al ser presionado, ejecuta una función que utiliza 'fetch' para obtener y mostrar el contenido HTML correspondiente.

10:02

🚫 Manejo de promesas fallidas y estados

El tercer párrafo discute cómo manejar las situaciones en las que una promesa no se cumple, es decir, cuando la operación asíncrona falla. Se mencionan los cuatro estados de una promesa: cumplida, rechazada, pendiente y finalizada. Se da un ejemplo de cómo se puede utilizar el método 'catch' de 'fetch' para manejar errores, como una conexión fallida o problemas del servidor, mostrando un mensaje de error en lugar del contenido esperado.

15:03

🔄 Comprobación de respuestas HTTP y manejo de errores

El cuarto párrafo profundiza en la validación de las respuestas HTTP recibidas y cómo manejar diferentes códigos de estado. Se explica que el objeto 'response' de 'fetch' contiene un código HTTP y que se puede verificar si este código indica éxito (200 OK) o algún otro error. Se sugiere mostrar un mensaje de error si la respuesta no es la esperada, como un 404 (Not Found) o un 500 (Internal Server Error), para informar al usuario cuando la página solicitada no existe o hay problemas en el servidor.

20:04

📚 Conclusión y manejo de errores en AJAX

El último párrafo concluye la discusión sobre AJAX y el manejo de errores. Se enfatiza la importancia de verificar la respuesta de la solicitud y de manejar los errores de conexión o de contenido no encontrado. Se sugiere la implementación de un mecanismo para mostrar un mensaje de error si no se puede obtener la respuesta esperada, asegurando así que el usuario esté informado en todo momento sobre el estado de la operación.

Mindmap

Keywords

💡Ajax

Ajax (Asynchronous JavaScript and XML) es una técnica que permite actualizar partes de una página web sin necesidad de recargar toda la página. En el video, Ajax se utiliza para realizar una 'parcial render', es decir, para cargar un fragmento del sistema y insertarlo en el HTML existente sin una recarga completa de la página.

💡Partial Render

El 'Partial Render' se refiere a la capacidad de cargar y mostrar solo una parte de una página web en lugar de toda la página. En el contexto del video, se menciona como una de las opciones para la carga de contenido, permitiendo así mejoras en la experiencia del usuario y en la eficiencia de la carga de la página.

💡REST

REST significa Representational State Transfer y es un estilo arquitectónico para la creación de servicios web. En el video, se menciona como una forma de obtener datos del servidor en formato JSON, que luego pueden ser procesados por el lado del cliente.

💡JSON

JSON (JavaScript Object Notation) es un formato de datos ligero que es fácil de leer y escribir para las personas y fácil de解析 para las máquinas. Se utiliza comúnmente en el intercambio de datos en aplicaciones web, como se menciona en el video, donde los datos son enviados desde el servidor y procesados por el lado del cliente.

💡Eventos

Los eventos en JavaScript son acciones que ocurren en un documento o un navegador, como hacer clic en un botón. En el video, se agrega un evento al botón para que cuando se ejecute, se llame a una función que realiza una solicitud al servidor y actualiza parte de la página.

💡Fetch API

La Fetch API es una interfaz que permite realizar operaciones de solicitud y respuesta en la web. En el video, se utiliza la Fetch API para obtener datos del servidor y manejar la promesa que devuelve, permitiendo así la actualización asincrónica de la página.

💡Promesas

Las promesas en JavaScript son objetos que representan el resultado de una operación asíncrona. En el video, se menciona que la Fetch API devuelve una promesa, la cual se maneja con métodos 'then' para ejecutar acciones una vez que la promesa se resuelve.

💡HTML

HTML (HyperText Markup Language) es el lenguaje de marcado estándar usado para crear páginas web. En el video, se habla de insertar un fragmento de HTML en una página existente, lo cual es parte del proceso de 'Partial Render' usando Ajax.

💡Estados de Promesas

Los estados de las promesas son 'fulfilled' (cumplida), 'rejected' (rechazada), 'pending' (pendiente) y 'settled' (finalizada). En el video, se discute cómo manejar estos estados, especialmente en el caso de que la promesa no se cumpla, para mostrar un mensaje de error u otro tipo de feedback al usuario.

💡HTTP Status Codes

Los códigos de estado HTTP son respuestas estándar de los servidores web que indican si una solicitud se ha realizado con éxito. En el video, se mencionan códigos como 200 (OK), 404 (Not Found) y 500 (Internal Server Error) para ilustrar cómo se manejan diferentes respuestas del servidor en la aplicación.

Highlights

Introducción a AJAX y sus dos formas principales: render parcial de páginas y servicios REST.

Render parcial implica cargar un fragmento del sistema y su inserción en el HTML.

Servicios REST implica buscar datos en el servidor y procesarlos en el cliente como un objeto JSON.

Ejemplo práctico de cómo hacer un botón que sin recargar la página, muestre un fragmento de HTML.

Proceso paso a paso para implementar render parcial y agregar un evento al botón.

Uso del método `fetch` para realizar una solicitud al servidor y obtener un archivo.

La función `fetch` devuelve una promesa que se maneja con `.then()` y `.catch()`.

Importancia de manejar el estado de la promesa y cómo se comporta cuando no se cumple.

Implementación del manejo de errores con `.catch()` para mostrar un mensaje de fallo.

Cómo utilizar el objeto `response` para verificar si la respuesta fue exitosa con un código HTTP 200.

Estrategia para manejar diferentes tipos de errores HTTP y mostrar mensajes adecuados.

Demostración de cómo se ve el código en una página web y su estructura HTML.

Explicación de cómo se agrega un evento de clic al botón y se evita el recargar de la página.

Proceso de reemplazo del contenido HTML usando `.innerHTML` con el texto de la respuesta.

Refactoring del código para evitar repetición y mejorar la eficiencia.

Manejo de errores en el caso de que la conexión falle o el archivo no exista.

Uso de la consola para depurar y verificar el estado de las respuestas y errores.

Conclusión sobre la importancia de entender AJAX asíncrono y cómo manejar promesas y errores.

Transcripts

play00:01

bienvenidos a esta segunda parte

play00:04

vamos a empezar a ver la primera opción

play00:06

de ajax que hemos visto que es la de

play00:08

parcial render con ajax

play00:12

bueno como habíamos había dos formas

play00:14

parece un render de las páginas que era

play00:18

cargar un fragmento del sistema y le

play00:19

insertaron en nuestro html y por otro

play00:22

lado de servicios rest

play00:24

que es ir al server a buscar algún dato

play00:28

para un objeto jason y procesarlo al

play00:30

lado del cliente

play00:34

bueno más un ejemplo vamos a apretar un

play00:38

botón y mostrar un pedacito html dentro

play00:40

de un día

play00:42

el contenido lo vamos a cargar desde

play00:45

este link que vamos a abrir

play00:52

y funcionando

play01:00

para vender a través de mí

play01:05

e

play01:07

vamos a crear una página que diga que

play01:10

tengo un botoncito cuando yo aprieto ese

play01:13

botón

play01:15

lo que va a pasar es que va a ir a

play01:17

buscar sin refrescar la página este

play01:20

pedazo de html y lo va a insertar acá

play01:27

adentro

play01:27

este es el fragmento que vimos recién

play01:29

ahí y lo vamos a insertar ahí adentro

play01:33

vamos a ver cómo se hace y para eso

play01:35

vamos a como siempre tratar de armar el

play01:38

paso a paso de qué vamos a hacer

play01:42

como mostramos un fragmento dentro del

play01:44

sitio usando parcial render primero

play01:47

creamos el sml después vamos a agregar

play01:51

un evento en el botón

play01:56

que ese evento cuando se ejecuta esa

play01:59

función que tiene asociadas en el

play02:01

internar va a ir y bajar el archivo

play02:04

hacer un pedido chiste del servidor y

play02:06

después va a mostrar dentro del día ese

play02:10

pedazo de html

play02:13

qué parte se vamos a hacer las primeras

play02:15

dos ya las redes sabemos hacer las

play02:19

segundas dos las últimas dos no sabemos

play02:22

hacerlo entonces vamos a ir paso a paso

play02:30

hola es decir de mucho gusto me dijeron

play02:32

que con voz puedo bajar cosas fáciles

play02:34

del servidor si es mucho más fácil sólo

play02:36

tenéis que usar el método page iberred

play02:39

genial page http dos puntos barra barra

play02:43

ahora me hace el archivo no tarda mucho

play02:47

eso pero te prometo que lo bajo

play02:50

pero necesito para seguir

play02:52

ya te lo prometo los tenemos que no

play02:55

tenés vos de civil que archivó qué

play02:58

quieres que haga después con el archivo

play02:59

y yo lo hago por vos o contaba un

play03:03

poquito más terminó vamos a ver no ese 7

play03:07

nos dice que tenemos una función se

play03:09

llama fecha vamos a ser fecha y hasta el

play03:11

archivo no cuando tenemos un archivo del

play03:13

servidor eso tarda tiempo no es

play03:15

automático no es un milisegundo que lo

play03:18

pido

play03:20

y esperar en ese momento es medio

play03:21

difícil

play03:23

vamos a ver cómo funciona

play03:26

en ese 7 incorpora el interfaz fecha

play03:30

para estar llamados ajax

play03:32

y lo que nos devuelve es una promesa

play03:34

fíjense que nosotros estamos dando

play03:36

promesa let promise face israel

play03:39

y es lo que hace esto es ir y hacer esto

play03:44

mismo estamos en nosotros

play03:46

de ir a esta web y traerlo pero por

play03:48

detrás lo hace como lo hace el motor de

play03:52

ajax

play03:59

eso me traen la promesa a mí si yo te

play04:01

prometo que te lo traigo te promete otra

play04:05

el control atraiga decime qué tengo que

play04:07

hacer entonces le ponemos punto del

play04:09

entonces conoce lo traigas lo que venga

play04:13

hagamos algo

play04:17

a la otra versión sin la necesidad de la

play04:21

variable intermedia ser el punto de

play04:26

henry pons

play04:27

211

play04:30

el uso más simple de fech toma un

play04:32

argumento la ruta del recurso de giro

play04:34

traer y el resultado es una promesa

play04:37

que contiene la respuesta a un objeto

play04:39

response básicamente acá adentro tenemos

play04:44

el html que lo tenemos en el cdm de

play04:46

trabajo de la url

play04:48

fíjense podemos ir a giuseppe para ver

play04:51

cuánto han implementado esta fecha

play04:55

fíjense qué

play04:57

en firefox y chrome en safari que son

play05:01

los más usados están implementado en

play05:02

todos

play05:05

también

play05:07

e implementado en casi todos es una

play05:09

interfaz prácticamente estándar hoy

play05:14

y pueden ver un poco más de información

play05:16

de fecha

play05:19

en la ayuda de mochila nivel mano del

play05:22

gorro

play05:24

bueno ahora es esto

play05:28

la carga parcial consiste entonces sería

play05:31

buscar el texto html a un archivo

play05:33

externo y ponerlo en un día con haití

play05:35

news ajax

play05:40

fíjense que hago fecha otro html de

play05:44

response

play05:46

a la response

play05:49

le sacó el texto que también es una

play05:52

promesa y el texto lo meto en el ine

play05:56

html

play05:59

y así que estamos procesando porque la

play06:01

respuesta nos prometí acá dentro de

play06:04

tener un texto va a tener lo que lo que

play06:05

trae adentro entonces con ese texto lo

play06:08

vamos a meter adentro del ine html

play06:13

entonces

play06:15

vamos a mirarlo en en la demo que

play06:20

tenemos preparada acá en el cowper así

play06:23

podemos analizar el código

play06:26

y ver cómo se hace

play06:32

tenemos html plane html así como lo

play06:36

conocemos y fíjense que acá tenemos un

play06:39

día

play06:40

que se llama news ajax

play06:45

no dice esto va a ser borrado

play06:48

tss no tenemos nada y en javascript

play06:52

tenemos

play06:54

cloud clic event

play06:57

y miren acá lo que hacíamos es vamos a

play07:01

ver antes de mirar la parte de arriba

play07:02

vamos a mirar este ejemplo está

play07:04

partecita acá

play07:08

yes loud james loud que es ese este

play07:11

botón

play07:14

tráeme ese botón

play07:16

y todos los botones que quieras porque

play07:19

pones el droid y por cada uno de esos

play07:25

agarra cada uno de esos for each

play07:28

y pone los niveles en el clic y que

play07:30

llame la función load clic

play07:33

bien entonces estamos diciendo que este

play07:35

botón o todos los botones que yo pueda

play07:37

crear

play07:39

le ponga la función load clic

play07:43

luego clic recibe un evento como ya

play07:45

sabemos y le podemos poner el evento en

play07:48

default esto nos va a ayudar a cuando

play07:50

por ejemplo tenemos un botón del zombi

play07:52

de lo que sea no se nos refresca la

play07:53

página sino que

play07:56

evite el reflejo de la página el envío

play07:59

de información al desarrollo

play08:03

de forma

play08:06

sin crónica vamos a cuando después acá a

play08:08

partir de este punto evitó el envío de

play08:12

información al server y puedo empezar a

play08:14

hacer cosas de mi lado

play08:16

lograse será un fecha

play08:18

primero de la url que le hemos pasado

play08:23

bien cuando me traigas eso la respuesta

play08:28

la voy a imprimir en la consola y va a

play08:30

decir la respuesta al darme un texto y

play08:33

ese texto

play08:35

anda al documento y buscar y usa siex

play08:38

que va a buscar este vídeo

play08:40

iba a reemplazar en línea siete ml con

play08:42

el texto entonces cuando yo ahora hago

play08:44

clic acá

play08:47

y automáticamente se pisa s

play08:51

un pedacito de html que teníamos

play08:55

bien sé que es bastante sencillo quizá

play08:58

es difícil de entender en el primer

play09:00

momento pero tan sencillo como

play09:02

funcionario de las promesas es

play09:05

anda a buscarme esto

play09:08

cuando lo traigas si lo traes

play09:11

la respuesta imprime la y dame el texto

play09:15

de la respuesta

play09:18

la respuesta te promete que va a haber

play09:20

un texto entonces cuando ese texto lo

play09:23

tengas efectivamente

play09:26

venid y

play09:31

busca en él existe ml en donde digamos

play09:35

los cavaliers que tenemos está

play09:38

y el html y poner ese texto este texto

play09:42

es todo ese pedazo de html

play09:45

así que si yo refresco a la página de

play09:48

esta hora

play09:50

this will be the cloud

play09:55

ahí sí claro

play09:59

vamos a seguir mirando un poquito más

play10:02

esto

play10:04

a dúo

play10:12

bueno hicimos al nudo si liberamos

play10:17

y qué pasa

play10:19

si la promesa no se cumple qué pasa si

play10:23

la descarga no se puede hacer

play10:28

piensas

play10:30

[Música]

play10:34

la promesa

play10:38

falsas promesas o sea no no cumple las

play10:41

promesas entonces qué hacemos

play10:45

tenemos una forma de decir que cuando no

play10:48

me cumpla la promesa

play10:52

entonces la promesa tiene cuatro estados

play10:55

el primero es cumplida es el fin

play10:58

la segunda es rechazada la tercera es

play11:03

pendiente y la cuarta es finalizada

play11:08

entonces

play11:11

nosotros hacemos algo por ejemplo el

play11:13

fecha está mejor una promesa

play11:16

cuando se cumpla llámame a esto esta

play11:20

función alcohol va que esté

play11:26

es si no se cumple si falla si pasa algo

play11:29

llámame este otra cosa entonces podemos

play11:31

poner en nuestro caso

play11:35

en este ejemplo estábamos acá viendo

play11:38

podríamos agarrar y

play11:41

decir acá por ejemplo si el fecha del

play11:47

podría poner acá esta altura un caché

play11:52

y si no se si no se cumple si fallo por

play11:55

ejemplo no anduvo bien el servidor o lo

play11:56

que sea

play12:00

me cambié el texto de este poder no pudo

play12:04

traer pedazo de mail ahora vamos a ver

play12:06

un poquito cómo hacer eso

play12:10

justo en el siguiente

play12:15

esto que le decía cuando hacemos el

play12:18

fecha

play12:20

si se cumple va a ejecutar esto pero si

play12:22

no se cumple

play12:24

pueda reír ponerle en el contenido en

play12:27

este caso 25 y selectos lo que sea lo

play12:30

que lo que traigo acá

play12:32

no tenemos el contenido sé que es pero

play12:35

alguien ya debe haber error conexión

play12:36

fail y hacer que se muestre eso fíjense

play12:41

a ver este ejemplo

play12:45

tiene la el html todo fenómeno y tiene

play12:48

además el caché

play12:51

en el caché

play12:54

que nos pone container html

play12:57

[Música]

play12:59

este contener es el juz a ser o sea es

play13:08

y acá lo tenemos acá podremos un pequeño

play13:11

factor y así que estamos repitiendo

play13:13

código vamos a hacer el pequeño en

play13:15

refractor

play13:19

entonces cuando yo era o lou

play13:23

vino y la promesa se cumplió qué pasa si

play13:28

yo le pongo huevón acá también la url

play13:31

que va a fallar en teoría

play13:34

y prueba

play13:41

algo pasó de hero coop

play13:48

quiso traer esto hasta bien

play13:53

como es una app

play13:56

y tratan de ir a buscar esto y trae el

play13:58

html decisión pongo esto en

play14:02

el fondo está

play14:06

a traer esa maquinita entonces nos está

play14:08

poniendo el parche el render

play14:14

de esa página vamos a entonces vamos a

play14:19

sacar

play14:21

vamos a poner fruta y ahora sí

play14:24

y es efectivamente falla

play14:28

bien

play14:31

para ver lo que pasó recién lo que pasó

play14:33

recién para que entendamos es estamos

play14:35

yendo a html

play14:39

pero

play14:41

web

play14:45

a olor y esto me trae el pedacito de

play14:47

html qué

play14:56

el vecino html

play15:00

que tenemos en esa aplicación nosotros

play15:02

cuando yo puse huevo uno acá como heroku

play15:06

como sigue siendo una página válida

play15:09

creo q va a ir a tratar de buscarlo como

play15:11

no lo encuentra nos va a mostrar

play15:13

nos h este pedazo de html y es una html

play15:17

entonces lo traemos y lo mostramos

play15:22

en este pedazo html

play15:26

yo puse huevo uno acá se va a mostrar la

play15:29

página que vimos yo la pongo

play15:35

google.com

play15:41

vamos a qué pasa

play15:43

seúl haga

play15:50

pero si pongo algo no existe

play15:55

por ejemplo una fruta

play16:00

paolo ahí sí

play16:03

me dice con él porque esa página no

play16:05

existe si yo estoy lo pongo

play16:10

haga

play16:11

es decir este sitio cambridge se puede

play16:14

no se puede acceder

play16:18

bien entonces tenemos ahora una forma de

play16:21

manejar estas falsas promesas

play16:27

ahora tenemos un problema más que es y

play16:29

si la conexión anduvo

play16:31

pero el archivo no existe

play16:34

qué pasa

play16:37

tenemos música para esto

play16:40

el objeto response que se que veíamos

play16:42

que tenemos en la

play16:45

que la traila fecha

play16:50

veámoslo este response

play16:53

tiene además

play16:55

un código un código de http

play17:00

si el response es ok no devuelve un

play17:03

código 200 y si fue por ejemplo porque

play17:09

no tenía permisos me da un 4.3 hay cada

play17:13

cada tipo de respuesta tiene un código

play17:16

específico

play17:18

en el caso de que se descargue es 200 ok

play17:20

en el caso de que no tengamos permisos o

play17:22

que el servidor se rompa

play17:24

cuando seleccionado se rompe existe pero

play17:26

el celular está roto nos devuelve un 500

play17:30

entonces en ese caso nosotros podemos

play17:32

preguntar

play17:36

play17:37

la respuesta fue ok muestra esto

play17:43

y la respuesta no fue ok fue voy otra

play17:44

cosa no tengo permiso no en lo que sea

play17:48

entonces voy a mostrar felibert en el

play17:52

caso de que no existe la página que no

play17:53

existe nada

play17:56

y voy a mostrar el conexión feo vamos a

play17:59

mirar entonces

play18:01

en este pedacito de

play18:03

de html y salir de vuelta a lo mismo

play18:07

tenemos ahora sí

play18:11

[Música]

play18:13

el vecino que mira que la respuesta sea

play18:15

ok

play18:17

en algo que yo no hice fue mostrar la

play18:21

consuela si yo hago loud

play18:31

ok

play18:33

con solo que uno hacia arriba está

play18:35

response

play18:43

porque nada estaba acción responde

play18:44

prueba no importa

play18:49

qué pasa si yo le pongo web 1 unicén a

play18:54

ver qué pasa ahora

play19:00

bien sé que ahora como estoy mirando

play19:05

el tipo de respuesta en lugar de

play19:08

mostrarme

play19:09

esta página que estaba viendo acá

play19:15

1

play19:17

voy a mostrar en este pedazo esto

play19:20

esto trajo

play19:23

un error una respuesta de error nos

play19:25

trajo dos incluso que se puede mirar

play19:27

acaba abriendo las civiles por tools

play19:30

creo que el network

play19:41

bueno acá nos dicen corriendo

play19:48

lo que el negro

play19:56

en ese vendrá con 404

play20:00

starace de mails y metas con 404

play20:03

este es el estatus en este que después

play20:07

de las de las cosas 301 re direct 200

play20:11

todos estos 200 pero el html yo pedí

play20:12

mientras un 404 que no es 200 cuales los

play20:16

cuatro es not found no puedo buscar

play20:20

html status code

play20:24

y acá van a ver todos

play20:26

los más usados son 202 ok después de

play20:31

algunos por ejemplo 201 fue creado o

play20:34

aceptado tiene una un poco más

play20:39

mínimo de semántica como lea

play20:45

después

play20:46

cuando el cuadro es el más

play20:52

solamente el no town y los 500 son

play20:56

intransables el server existe

play20:59

me atiende pero está rota y cuando

play21:02

buscan esto pueden acaba venir y mirar

play21:05

la explicación el ser encontrado una

play21:08

condición esperada

play21:10

que previno que sea

play21:14

se complete el recuerdo

play21:17

tiene 200 ok y si no 404 que no existe o

play21:23

el 500 también puede ser solo más como

play21:25

unos 400 y cuando empiezas a hacer cosas

play21:27

autenticación eso 403 que es forbidden

play21:30

es también bastante común el resto son

play21:33

más raros

play21:35

volvamos un poquito haga

play21:38

perdona este haga

play21:44

entonces sí así que ahora nosotros

play21:48

como estamos chequeando que la respuesta

play21:50

sea 200 ok vamos a mostrar solamente el

play21:55

7 medio cuando llega

play21:57

si por alguna razón esta url no existe

play22:01

nos va a devolver y ahora del fire jon y

play22:04

si por alguna razón

play22:06

nada de esto existe en este caso pero q

play22:10

apuntó cuando existe por eso fuimos y

play22:13

nos dijo 4 en 24 y después una

play22:16

redirección y muestra otra cosa pero

play22:19

nosotros sólo estamos mostrando el

play22:20

verdadero el verdadero contenido que es

play22:23

bueno no no existe esto que está

play22:24

buscando

play22:28

después en el caso de que no existe el

play22:30

servicio no exista nada nos va a mostrar

play22:32

este error conexión fe

play22:40

bueno qué está ocurriendo con cada

play22:41

llamado de la función bien

play22:47

en el del el primer ven es la respuesta

play22:49

de la solicitud de fecha o sea nos traen

play22:51

la respuesta

play22:54

cuando procesamos la respuesta nos da

play22:57

otra promesa

play23:01

en esa promesa no sólo ponemos este then

play23:04

acabe en html

play23:09

y ahí proceso esta respuesta de este acá

play23:13

y en el caso de que haya una rueda de

play23:15

conexión o sea que acá falle este edén

play23:18

nos debe ejecutar por lo tanto este de

play23:19

él no se va a ejecutar por lo tanto se

play23:21

va a ejecutar de caché directamente

play23:24

con sus dos como de ahora mayor

play23:30

vamos entonces a ahora a cortar para

play23:34

después continuar con ajax asíncrono

play23:37

pero en serio entendido cuando cosas

play23:40

pueden agregar comentarios acá abajo o

play23:42

con preguntar en la lista

Rate This

5.0 / 5 (0 votes)

Related Tags
AJAXPartial RenderWeb DevelopmentJavaScriptHTMLServidoresJSONPáginas DinámicasProcesamiento de DatosManejo de Promesas
Do you need a summary in English?