el servidor envía una respuesta. No entiendo cómo procesarlo. Si obtiene "json", abre una página con matriz. Si obtiene "res.render", actualiza la página. ¿Cómo puedo obtener json y procesarlo?
// express.js if (!errors.isEmpty()) { if (errors.array().find(el => el.param === 'login')) { //1 version res.status(409).json({ message: 'Error login' }) //2 version res.render('reg', { isReg: true }) } } <!-- Handlebars --> <form class="login-form" action="/reg" method="POST" > <div class="form-group"> <label for="exampleInputEmail1" class="text-uppercase">Login</label> <input type="text" class="form-control" id="validationLogin" name="login" placeholder="" required> </div> <div class="block-login d-flex justify-content-center"> <button type="submit" class="btn btn-login float-right">Submit</button> </div> </form> <!-- how to get an answer? --> <script> //example var answer = res.json </script>Si usa res.json , el punto final devolverá JSON. Esto está diseñado para consumirse con algún código personalizado y no para cargarse directamente en el navegador. Puede realizar una solicitud Ajax y luego insertar datos del resultado en el DOM . Así es como obtienes el resultado sin cargar una nueva página.
Si usa res.render , entonces el punto final devolverá lo que represente, que casi siempre es HTML. Esta es una nueva página. Se espera que pase los datos como el segundo argumento para render y luego procesarlos con el motor de vista que ha seleccionado (handlebars en este caso).
p.ej
<p>{{isReg}}</p>