¿Cómo hacer una solicitud PUT simple usando la API de búsqueda creando una biblioteca HTTP personalizada?

El método fetch() se usa para enviar las requests al servidor sin actualizar la página. Es una alternativa al objeto XMLHttpRequest . Tomará una API falsa que contendrá Array como ejemplo y desde esa API mostraremos PUT/Update  data mediante el método de obtención de API creando una biblioteca HTTP personalizada. La API utilizada en este tutorial es: https://jsonplaceholder.typicode.com/users/2

Requisito previo: debe conocer los conceptos básicos de HTML CSS y JavaScript.

Explicación: En primer lugar, debemos crear el archivo index.html y pegar el siguiente código del archivo index.html en él. Este archivo index.html incluye el archivo library.js y app.js en la parte inferior de la etiqueta del cuerpo. Ahora, en el archivo library.js , en primer lugar, cree una clase ES6 EasyHTTP y dentro de esa clase hay una función async fetch() que coloca los datos en la URL de la API. Hay dos etapas de espera. Primero por fetch() y luego por su respuesta. Cualquiera que sea la respuesta que recibamos, la devolvemos a la función de llamada en el archivo app.js.

Ahora, en el archivo app.js , en primer lugar, cree una instancia de la clase EasyHTTP . Luego, al poner la función de prototipo, envíe la URL al archivo library.js . Además en esto hay dos promesas por resolver. El primero es para cualquier dato de respuesta y el segundo es para cualquier error.

Nombre de archivo: index.html

<!DOCTYPE html>
<html lang="en">
  
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content=
        "width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible"
            content="ie=edge">
    <title>PUT Request</title>
</head>
  
<body>
    <h1>
        Simple PUT request using fetch API 
        by making custom HTTP library
    </h1>
  
    <!-- Including library.js and app.js -->
    <script src="library.js"></script>
    <script src="app.js"></script>
</body>
  
</html>

Nombre de archivo: biblioteca.html

// ES6 class
class EasyHTTP {
  
   // Make an HTTP PUT Request
   async put(url, data) {
  
    // Awaiting fetch which contains method,
    // headers and content-type and body
    const response = await fetch(url, {
      method: 'PUT',
      headers: {
        'Content-type': 'application/json'
      },
      body: JSON.stringify(data)
    });
      
    // Awaiting response.json()
    const resData = await response.json();
  
    // Return response data 
    return resData;
  }
}

Nombre de archivo: app.html

// Instantiating new EasyHTTP class
const http = new EasyHTTP;
// User Data
const data = {
    name: 'sunny yadav',
    username: 'sunnyyadav',
    email: 'sunny@gmail.com'
  }
  
// Update Post
http.put(
'https://jsonplaceholder.typicode.com/users/2',
     data)
  
// Resolving promise for response data
.then(data => console.log(data))
  
// Resolving promise for error
.catch(err => console.log(err));

Salida: Abra el archivo index.html en el navegador y luego haga clic con el botón derecho-> inspeccionar elemento->consola .
El siguiente resultado que verá para la solicitud PUT .

Publicación traducida automáticamente

Artículo escrito por thacker_shahid y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *