¿Cómo recibir datos JSON en el lado del servidor?

La notación de objetos de JavaScript (JSON) es un formato de transferencia de datos que se utiliza para enviar datos hacia o desde el servidor. Se utiliza comúnmente en la integración de API debido a sus beneficios y simplicidad. En este ejemplo, utilizaremos XML HttpRequest para enviar datos al servidor.

Frontend: Usaremos un formulario simple que contiene el nombre y el correo electrónico como un botón de entrada y envío para enviarlo al servidor. Los datos que se envían a un servidor web deben ser una string. Como resultado, usamos la función JSON.stringify() para transformar los datos en una string y transmitirlos al servidor a través de una solicitud XHR

HTML

<!DOCTYPE html>
<html>
  
<body>
    <h1>GeeksForGeeks</h1>
    <input type="text" id="name" 
           placeholder="Your name" />
    <input type="email" id="email"
           placeholder="Email" />
    <button onclick="sendJSONdata()">
      Submit
    </button>
    <script>
        function sendJSONdata() {
            var name = document.getElementById("name");
            var email = document.getElementById("email");
  
            // Creating a XHR object
            var xhr = new XMLHttpRequest();
  
            // open a connection
            xhr.open("POST", "/userdata");
  
            // Setting the request header
            xhr.setRequestHeader(
              "Content-Type", "application/json"
            );
  
            // Converting JSON data to string
            var data = JSON.stringify(
              { name: name.value, email: email.value }
            );
            xhr.send(data);
  
            name.value = "";
            email.value = "";
        }
    </script>
</body>
  
</html>

Backend: usaremos el marco Express y NodeJS para crear el servidor que se ejecuta en el puerto 3000. La solicitud de publicación por parte del front-end en la ruta /userdata se maneja aquí y uno puede ver los datos enviados por el frontend al iniciar sesión con la ayuda del método console.log().

Javascript

const express = require("express");
const bodyParser = require("body-parser");
  
const app = express();
  
app.use(bodyParser.json());
  
app.get("/", function (req, res) {
    res.sendFile(__dirname + "/index.html");
});
  
app.post("/userdata", function (req, res) {
    console.log(req.body);
});
  
app.listen(3000, function () {
    console.log("Server started on port 3000");
});

Producción:

Publicación traducida automáticamente

Artículo escrito por vishalkumar98765432 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 *