Я пытаюсь имитировать логин пользователя по угловому2 Http. пусть описывают ситуацию как рев.
У меня есть приложение php, которое пользователи могут вводить в систему. http://sample.com/login.php
url (форма существует с именем пользователя и паролем, пользователь должен заполнить ввод и нажать кнопку отправки), и если логин будет успешным, они перенаправляются на http://sample.com/dashboard.php
.
поэтому я создаю сообщение Http
с данными формы, в которых есть «имя пользователя» и «пароль». и установить Http-заголовок content-type
как application/x-www-form-urlencoded
.
Вход в систему работает нормально и запрос автоматически перенаправляется на http://sample.com/dashboard.php
.
проблема заключается в том, что мне нужно получить заголовок ответа первого запроса (http://sample.com/login.php), но Http ответит мне второй заголовок ответа запроса (http://sample.com/dashboard.php).
- это любой способ предотвратить перенаправление Http? или выбросить ошибку на статус 302?Angular2, Как предотвратить перенаправление HTTP
var headers = new Headers({'Content-Type':'application/x-www-form-urlencoded'});
var options = new RequestOptions({ headers: headers });
Http.post("http://sample.com/login.php",'username=admin&password=123' , options)
.subscribe(success => {
// success and return redirected response
// response of http://sample.com/dashboard.php
}, error => {
// error handler
}
);
вы проверили success.status? –
@ A.T. его возвращение 200, статус запроса перенаправления – Shayan
@ Shadow Wizard Я бы не счел это * точным * дубликатом. Этот вопрос специфичен для Angular 2, поэтому, отмечая это как дубликат, подразумевается, что все, кто наткнулся на этот вопрос, знают, что HTTP-служба Angular 2 использует XMLHttpRequest под капотом. Я очень сомневаюсь в этом: иначе 1000 зрителей этого вопроса могли бы искать HXMLHttpRequest напрямую и никогда бы не приземлились здесь. ИМО правильный ответ, что HTTP-служба Angular использует XMLHttpRequest (вместе со ссылкой на вопрос, который вы отметили как дубликат) – emrass