Así que tengo un servidor expreso configurado para enviar la siguiente página html a pedido:
<!DOCTYPE html> <html> <head> <link rel="stylesheet" type="text/css" href="../style.css"> <title>My Title</title> </head> <body > <div id="state"> <p></p> </div> <script> const urlParams = new URLSearchParams(window.location.search); const dateparam = urlParams.get('date'); function loadDoc() { fetch('http://my_machine_name:5000/wa/send/api?date=' + dateparam).then(response => response.json()).then(post => { document.getElementById("state").innerHTML = post.htmltext; const interv = setInterval(loadState, 1000); }); } function loadState() { fetch('http://CLINIC:5000/api/update').then(response => response.json()).then(post => { document.getElementById("state").innerHTML = post.htmltext; if (post.finished) { clearInterval(interv); }; }); } window.onload = "loadDoc()" </script> </body> </html>aquí está el código del nodo js para enviar la página html:
app.get('/wa', function (req, res) { const report = req.query.report; if (report) { res.sendFile(path.join(__dirname, '/report.html')); console.log('report requested') } else { res.sendFile(path.join(__dirname, '/send.html')); } });Todo funciona bien, excepto cuando actualizo la página html del informe, cuando hago eso no sucede nada y, de hecho, nunca se realiza una solicitud al servidor, y cuando examino la pestaña de red de la herramienta del desarrollador en Chrome veo una solicitud para esta URL ' http://my_machine_name:5000/wa/send/api?date=2021-1-1&report=true ', con estado pendiente, por lo que la solicitud es correcta, no entiendo por qué no se transfiere a ¿el servidor? Sin embargo, si cancelo la actualización y presiono Intro en la barra de direcciones, se envía la solicitud y todo funciona bien una vez más, por lo que es solo una actualización. Estoy probando esto en mi máquina de servidor de Windows local si eso importa.
Muchísimas gracias.