#javascript #node.js #routes #sails.js
#javascript #node.js #маршруты #sails.js
Вопрос:
каков наилучший способ перенаправления внутри Sails.js Контроллер переходит с одного маршрута на другой и одновременно передает некоторые данные. Моя ситуация такова, что у меня есть один маршрут, который создает некоторые данные и перенаправляет обратно на другой маршрут. Моя проблема в том, что я не знаю, как передать сообщение об ошибке (если таковое произойдет) обратно на другой маршрут (потому что я хочу отобразить его там).
Бруно
Комментарии:
1. Не уверен, что это можно сделать. На этом этапе я бы перенес часть вашей логики контроллера в службу, чтобы вы могли использовать один и тот же код в обоих маршрутах.
2. Можете ли вы привести пример? Вам нужен второй маршрут или он просто для отображения сообщений об ошибках? Я бы, вероятно, передал сообщение об ошибке (или идентификатор кода ошибки) в URL-адресе в качестве параметра GET или использовал флэш-сообщения .
3. Второй реализует некоторую логику, и только в случае возникновения ошибки я хочу передать ее первому маршруту… В противном случае я просто использую res.redirect
Ответ №1:
Моя проблема в том, что я не знаю, как передать сообщение об ошибке (если таковое произойдет) обратно на другой маршрут (потому что я хочу отобразить его там).
Sails@v0.12 включает промежуточное программное обеспечение flash в виде https://github.com/jaredhanson/connect-flash:
req.flash('error', payload);
res.redirect(307, '/');
return;
Чтобы получить ошибку в другом контроллере:
var error = req.flash('error');
Комментарии:
1. выглядит неплохо … Я попробую это позже… но уже спасибо