Diferencia entre revisiones de «PHP Promise e Fetch»
Ir a la navegación
Ir a la búsqueda
(Página creada con «==Introdución== * Unha '''promise''' ven ser unha petición que realizamos de forma asíncrona a un servidor e que permite que o código do cliente continúe a súa execu…») |
|||
| Línea 12: | Línea 12: | ||
* '''Fetch''' tamén realiza unha operación asíncrona e devolve unha promesa xa preparada para o seu uso. Ten asociados tres métodos: | * '''Fetch''' tamén realiza unha operación asíncrona e devolve unha promesa xa preparada para o seu uso. Ten asociados tres métodos: | ||
| − | :* .then(): Onde se reciben os datos. | + | :* '''.then()''': Onde se reciben os datos. |
| − | :* .catch(): Se se produce algunha excepción | + | :* '''.catch()''': Se se produce algunha excepción |
| − | :* .finally(): Un código que podemos executar tanto se foi ben (then) como se foi mal (catch) a chamada a obtención de datos de forma asíncrona. | + | :* '''.finally()''': Un código que podemos executar tanto se foi ben (then) como se foi mal (catch) a chamada a obtención de datos de forma asíncrona. |
| Línea 27: | Línea 27: | ||
<br /> | <br /> | ||
| + | |||
==Funcionamento== | ==Funcionamento== | ||
Revisión del 11:26 29 mar 2024
Introdución
- Unha promise ven ser unha petición que realizamos de forma asíncrona a un servidor e que permite que o código do cliente continúe a súa execución.
- Una promesa ten tres estados:
- Resolved: Unha promesa normalmente vai solicitar unha información a un servidor. Cando dispón de dita información pasa ao estado resolved.
- Rejected: Cando a promesa non devolve un valor ou cando se produce unha excepción debido a que o valor devolto non ten o formato correcto.
- Pending: Cando xa iniciamos a petición e aínda non tivemos resposta.
- Unha promesa pode pasar do estado pending a resolved ou rejected e non pode ter transaccións entre os estados.
- Fetch tamén realiza unha operación asíncrona e devolve unha promesa xa preparada para o seu uso. Ten asociados tres métodos:
- .then(): Onde se reciben os datos.
- .catch(): Se se produce algunha excepción
- .finally(): Un código que podemos executar tanto se foi ben (then) como se foi mal (catch) a chamada a obtención de datos de forma asíncrona.
- Se os dous fan o mesmo, en que se diferencian ?
- Digamos que promise, que é parte da linguaxe JavaScript, é mais de 'proposito xeral'. Permite facer calquera tipo de petición asíncronas e permite executar múltiples operacións asíncronas e executalas en orde, unha despois de outra.
- Fetch pola súa parte, é unha función da API Fetch que está orientada a ser empregada para facer peticións de rede e recibir información de ditas solicitudes (por exemplo empregando HTTP Requests).
- Nos imos ver fetch xa que o imos empregar para realizar peticións a API Rest e obter os resultados.
Funcionamento
- O funcionamento é moi sinxelo.
-- Ángel D. Fernández González -- (2024).