Получение ошибки перенаправления даже после включения CORS
Я пытаюсь переключить управление на другой маршрут (НЕ следующий маршрут), имеющий путь /getProfile, когда условие не соответствует. Для этого я использую res.redirect()
(Запрос 1: это правильный способ передачи управления от одного маршрутизатора к другому? Если нет, как бы я это сделал?)
Вот код из моего JS на стороне сервера:
app.use(function (req, res, next) {
res.setHeader('Access-Control-Allow-Origin', '*');
res.setHeader('Access-Control-Allow-Methods', 'GET, POST, OPTIONS, PUT, PATCH, DELETE');
res.setHeader('Access-Control-Allow-Headers', 'X-Requested-With,content-type');
next();
});
app.use('/getProfile', function (req, res, next) {
var userName = req.session.userName;
if(userName && userName != 'undefined'){
console.log("if");
next('route');
} else {
console.log("else");
res.redirect("getProfile");
next('route');
}
});
app.post('/getProfile', function (req, res, next) {
//do something
});
Код на стороне клиента:
$scope.getProfile = function(){
loggedInUser=$("input[name='email']").val();
$http({
method : "POST",
url : "http://192.168.43.200:3000/getProfile",
data: JSON.stringify({userName: loggedInUser}),
headers: {'Content-Type': 'application/json'}
}).then(function mySuccess(response) {
//do something
}, function myError(response) {
//do something
});
}
Но я получаю следующую ошибку, когда нажимаю запрос к /getProfile из браузера:
XMLHttpRequest не может загрузить http://192.168.43.200:3000/getProfile. Ответ на предпечатную проверку недействителен (перенаправление)
Вопрос 2: я делаю что-то не так?
Вопрос 3: Есть ли разница между передачей (я не знаю, как это называется, я уже спрашивал об этом в запросе 1) управления другим маршрутом и перенаправлением?
ПРИМЕЧАНИЕ: я получаю выше ошибка только после введения app.use("*")
и перенаправить часть.
Пожалуйста, ответьте на эти вопросы. Я действительно смущен.