Http post in angular 7 возвращает неверный ответ - PullRequest
0 голосов
/ 27 февраля 2019

Я использую http-пост для одного из моих угловых приложений для входа в систему. Я проверил URL с помощью params в postman, который выдает мне вывод. Но когда я пытаюсь использовать то же самое в приложении, я получаю ошибку какневерный логин все время.Я хотел бы знать, правильный ли способ, которым я передаю параметры, или нет?

const formData =  `username=${username}&password=${password}`;
const options = { headers: new Headers({ 'Content-Type': 'application/x-www-form-urlencoded' }) };
return this.http.post<any>(`${this.baseUrl}?action=login&`, formData, options)
        .pipe(map(response => {
            console.log('user is', response);
            if (response && response.session && response.session.id) {
                localStorage.setItem('currentUser', JSON.stringify(response));
                this.currentUserSubject.next(response);
            }

            return response;
        }));

Ошибка, которую я получаю,

user is {error: "Incorrect Login."}

1 Ответ

0 голосов
/ 27 февраля 2019

Вы можете попробовать вот так вместо formData

const data = new HttpParams()
    .set('username', username)
    .set('password', password);

return this.http.post<any>(`${this.baseUrl}?action=login&`, data)
        .pipe(map(response => {
            if (response.status === 'success') {
                localStorage.setItem('currentUser', JSON.stringify(response));
                this.currentUserSubject.next(response);
            }

            return response;
        }));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...