Я получаю сообщение об ошибке, `req.redirect` не является функцией - PullRequest
0 голосов
/ 18 января 2020

Я новичок ie на узле.

Я получаю следующую ошибку,

TypeError: req.redirect is not a function
    at Post.create (/var/www/html/node_blog/index.js:40:7)
    at /var/www/html/node_blog/node_modules/mongoose/lib/utils.js:276:16
    at Function.<anonymous> (/var/www/html/node_blog/node_modules/mongoose/lib/model.js:4798:21)(/var/www/html/node_blog/node_modules/mongoose/lib/model.js:486:7)
    at /var/www/html/node_blog/node_modules/kareem/index.js:315:21
Emitted 'error' event at:
    at /var/www/html/node_blog/node_modules/mongoose/lib/model.js:4781:13
    at /var/www/html/node_blog/node_modules/mongoose/lib/utils.js:276:16
    [... lines matching original stack trace ...]
    at process._tickCallback (internal/process/next_tick.js:61:11)

Ниже приведен мой код

app.post('/post/save', (req, res) => {
    Post.create(req.body, (err, post) => {
        req.redirect('/');
    });
});

Ответы [ 3 ]

1 голос
/ 18 января 2020

это будет res.redirect('/'); не req.redirect('/');

перенаправить пользователя в ответ с помощью res.redirect('/redirect_url_here');

вы можете прочитать здесь: https://expressjs.com/en/4x/api.html#res .redirect

1 голос
/ 18 января 2020

Использовать перенаправление на response объект. Метод перенаправления определен в объекте ответа.

Объект запроса содержит информацию о клиентском запросе. И ответ используется для отправки ответа клиенту. Перенаправление также является ответом клиенту, в котором сервер отправляет ответ с кодом состояния 302.

app.post('/post/save', (req, res) => {
    Post.create(req.body, (err, post) => {
        res.redirect('/');
    });
});
0 голосов
/ 22 января 2020

попробуйте следующую строку

  Post.create(req.body, (err, post) => {
    res.redirect('/');
  });
...