2015-06-04 3 views
0

В моем экспресс-приложении, когда админ успешно входит в систему, я хочу, чтобы он был отправлен на его страницу панели мониторинга. Таким образом, в функции post, в случае успеха, я обращаю к admin/ который принимает его к следующей функцииБраузер не перенаправляется с res.sendFile()

Так у меня есть:

adminRoutes.get('/', function(req, res){ 
    console.log("/", path.join(__dirname, 'public/admin/index.html')); 

    res.sendFile(path.join(__dirname, 'public/admin/index.html'), {}, function (err) { 
     if (err) { 
      console.log(err); 
      res.status(err.status).end(); 
     } 
     else { 
      console.log('Sent:'); 
     } 
    }); 
}); 

Но проблема, ничего не происходит в моем браузере. Он просто остается на странице браузера. Он не меняется на новую страницу, которую я отправляю.

Почему это не работает?

+0

Вы добираетесь до журнала «Отправлено:» в консоли? – laggingreflex

+0

@laggingreflex Да, я. Вот что меня избило – CodyBugstein

ответ

1

Вы должны сделать redirect не sendFile. sendFile - это указание браузеру загрузить определенный файл. Попытка:

res.redirect('public/admin'); 

Также убедитесь, что это зарегистрировано на ваших маршрутах. Маршрут должен затем render HTML.

+0

и что на маршруте 'public/admin'? В какой-то момент я должен отправить файл – CodyBugstein

+0

Вы имеете в виду загружаемый файл? Или файл, созданный как HTML? Это два принципиально разных понятия для браузера – beautifulcoder

Смежные вопросы