Аутентификация под угловым логином с помощью json rest api - PullRequest
0 голосов
/ 03 марта 2019

Я пытаюсь сделать аутентификацию при входе в систему под углом, в которой при вводе идентификатора и пароля электронной почты мы получаем токен.Поэтому для аутентификации мы должны отправить этот заголовок в запросе API api, но я не могу это сделать.

Мой код показан ниже

onSubmit (форма: NgForm) {

this.http.post('https://pikreview.com/rest/user.php?f=authenticate',

    JSON.stringify({

        email: "a@gmail.com",
        password: "12345"
    })
).subscribe(res => {

    localStorage.setItem('token', res.token);
    var authToken = localStorage.getItem('token');
    console.log("token is " + authToken);
    var headers: HttpHeaders = new HttpHeaders({
        'token': `${authToken}`,
        'Access-Control-Allow-Credentials': true,
    });
    var req = new HttpRequest('GET',
         'https://www.pikreview.com/rest/user.php', {
            headers: headers,
            withCredentials: true
        }
    );

    this.http.request(req).subscribe(data => {
        console.log(data);
    })
}, error => {
    console.log("something went wrong");
});

}

И одна вещь, которую я видел, что всякий раз, когда я передаю заголовок токена, генерируется что-то set-cookie, которое имеет значение токена на странице аутентификации, но на странице профиля оно не получает то же самоетокен, и я думаю, поэтому он показывает недопустимый токен. Итак, если кто-то что-то знает об этом и может решить мою проблему, пожалуйста, ответьте как можно скорее.

1 Ответ

0 голосов
/ 03 марта 2019

Вы просто вызываете API с вашим пользовательским заголовком, используйте HttpHeaders так:

        const httpOptions = {
          headers: new HttpHeaders({
            'Authorization': "YOUR_TOKEN"
          })
        }
      this.http.get('http://localhost:5000/getUser',httpOptions)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...