Puedes pensar en Fetch como el juego literal de jugar a buscar con tu perro:
Para comprender Fetch, debe comprender los cuatro tipos de solicitudes que Fetch nos proporciona:
fetch("http://example-Url-of-an-API")
Si ingresa el código anterior en su consola, obtendrá una promesa. De hecho, una solicitud de recuperación exitosa siempre devolverá una promesa. Una excelente manera de pensar en una promesa es como un pagaré. Este pagaré garantiza que se le devolverá algo. Junto con una promesa, viene una respuesta, pero ¿cómo convierte esa respuesta en datos utilizables para las aplicaciones?
¿Quieres leer esta historia más tarde? Guárdelo en el diario.
Hace esto con una .thendeclaración, que convierte los datos en algo legible y digerible con JSON. JSON o J ava S cript O bject N otation es el formato de transmisión de datos a través de aplicaciones web.
Aquí hay un ejemplo de nuestro ejemplo de solicitud Fetch con su primera .thendeclaración:
fetch("http://example-Url-of-an-API")
.then(response => response.json())
Cuando pides .json()una promesa, a cambio, obtienes otra promesa más. Esta segunda promesa es imperativa porque le permite ver y utilizar los datos que devuelve de la manera que crea conveniente.
En el siguiente ejemplo, los datos de la API se registran en la consola a través de la segunda promesa en la solicitud Fetch.
fetch("http://example-Url-of-an-API")
.then(response => response.json()
.then(data => {
console.log(data)
})
Para el propósito de este blog y la simplicidad, creé una base de datos de películas simple en mi db.jsonarchivo en VSCode y la ejecuté en localhost: 3000 usando el comando json-server --watchdb.json.
Así es como se ve mi base de datos:
GET las solicitudes se utilizan para recuperar o "obtener" datos de una API:
fetch("http://localhost:3000/movies")
.then(response => response.json())
POST las solicitudes se utilizan para cargar o agregar datos a una API:
const configObject = {
method: ‘POST’,
headers:
{
“Content-Type”: “application/json”,
“Accept”: “application/json”
},
body: JSON.stringify({
title,
release_date,
image_url,
rating
})
}
fetch("http://localhost:3000/movies", configObject)
.then((response) => {
return response.json()
}).then(function (object) {
return object
})
POSTsolicitud.PATCH / PUT las solicitudes se utilizan para editar datos que ya están en la base de datos.
fetch(`http://localhost:3000/movies/${movieId}`, {
method: ‘PATCH’,
headers:
{
“Content-Type”: “application/json”,
},
body: JSON.stringify({
image_url,
rating
})
})
.then((response) => {
return response.json()
}).then(function (object) {
return object
})
Dado que estoy actualizando información, voy a utilizar un PATCHmétodo. Para las PATCHsolicitudes, el enlace es dinámico, puede hacer que un enlace sea dinámico utilizando marcas inversas ( `` ). Hice esto porque quiero que la PATCHsolicitud sea aplicable a cualquier película con cualquier Id en nuestra base de datos y para hacer esto necesito interpolar el ${movieId}.
También cambié la sección del cuerpo de la solicitud. Hice esto porque en mi aplicación solo quiero que se puedan cambiar ciertos atributos. En este caso es el image_urly el rating. Omití el titley release_datedado que esos atributos de una película generalmente no cambian.
DELETE las solicitudes se utilizan para eliminar un dato:
fetch(`http://localhost:3000/movies/${movieId}`, {
method: “DELETE”,
}).then(response => response.json())
.then(response => { return response })
No se preocupe si todo esto parece mucha información al principio. Se necesita tiempo y práctica para entender a Fetch. No olvide que la documentación está disponible y accesible en Internet en todo momento. He encontrado que los documentos web de MDN sobre el uso de Fetch son muy útiles:
Dicho esto, cuando empiece, intente no copiar y pegar la documentación. En su lugar, escriba todo por su cuenta, mientras mira la documentación. Esto le ayudará a comprender mejor lo que está escribiendo y grabará la sintaxis en su memoria.
Tu turno… ¡Ve a buscar!
En el panorama empresarial en rápida evolución actual, el concepto de trabajo híbrido y remoto ha ganado un impulso sin precedentes. A medida que las empresas continúan adaptándose a las necesidades y expectativas cambiantes de sus empleados, expertos de varios campos se han reunido para analizar los beneficios, los desafíos y el futuro de esta forma transformadora de trabajar.
La semana pasada noté un comunicado de prensa, enviado a través de PressGazette (un sitio web de noticias de los medios británicos). El artículo anunciaba que Acast, la empresa de publicidad y alojamiento de podcasts de Scandi, lideraría un consorcio de editores "probablemente los más influyentes" en podcasting.
En 2022, con el lanzamiento de GPT-3, la habilidad de escritura parece perder importancia. Con IA, las personas con mala escritura también pueden generar personal de calidad.
Introducción: Bienvenidos, valientes lectores, a un viaje que nos llevará a las profundidades más oscuras de nuestro planeta. En este blog, profundizamos en el enigmático mundo de la Fosa de las Marianas, descubriendo sus secretos ocultos y descubriendo las verdades escalofriantes que se encuentran debajo de su superficie.
[Alerta de activación: este ensayo incluye capturas de pantalla de personas que elogiaron al asesino de Jordan Neely.] Los funcionarios encargados de hacer cumplir la ley finalmente, y quizás a regañadientes, acusaron a Daniel Penny, el hombre que estranguló a Jordan Neely hasta que murió, por ese homicidio.
Por Alyson Lee, asesora de gestión de asuntos gubernamentales El proceso de asignaciones anuales del gobierno federal es fundamental para nuestros esfuerzos por financiar la eliminación de dióxido de carbono (CDR). Cada año, Carbon180 envía solicitudes a varias oficinas del Congreso para ayudar a guiar hacia dónde fluirán los dólares del próximo año.