Tengo un pequeño problema con res.redirect();
He escrito una función que al hacer clic en el botón envía una solicitud de publicación al servidor y está funcionando. Pero cuando trato de usar res.redirect ("/"), me redirige a la ruta de inicio en el servidor, pero no sucede nada en el navegador.
Aquí está el código:
Una función que envía una solicitud de publicación.
const sendData = () =>{ const title = document.getElementById('titleOfArticle').value; const textForPublish = document.getElementById('textForPublish').value; const data = { title, textForPublish } const options = { method: "POST", headers: { 'Accept': 'application/json', 'Content-Type': 'application/json' }, body: JSON.stringify(data), } fetch('/compose', options); }Código del servidor:
const bodyParser = require("body-parser"); const ejs = require("ejs"); const posts = []; //array for all posts const homeStartingContent = "text 1"; const aboutContent = "text 2"; const contactContent = "text 3"; const app = express(); app.set('view engine', 'ejs'); app.use(bodyParser.urlencoded({ extended: true })); app.use(bodyParser.json()); app.use(express.static("public")); app.get("/", (req,res) => { res.render('home', {homeContent: homeStartingContent}); console.log(posts); }) app.get("/about", (req,res) => { res.render('about', {aboutContent: aboutContent}); }) app.get("/contact", (req,res) => { res.render('contact', {contactContent: contactContent}); }) app.get("/compose", (req,res) => { res.render('compose'); }) app.post('/compose', (req,res) => { const post = { title: req.body.title, content: req.body.textForPublish }; posts.push(post); res.redirect('/'); });