HttpErrorResponse {заголовки: HttpHeaders, статус: 401} - PullRequest
0 голосов
/ 05 марта 2019

Я новичок в Angular и Ionic.Это мой первый проект.Я хочу вызвать конечную точку API с угловой точки зрения, и при правильном ответе я хочу перейти на следующую страницу.

Это не работает, я получаю эту ошибку

HttpErrorResponse {headers: HttpHeaders, status: 401, statusText: "OK", url: "http://api/auth/session", ok: false, …}

Я искал почти все в Интернете, но не смог найти никакого решения.Пожалуйста, помогите мне.

Код:

Для моего логина:

import { Component } from '@angular/core';
import { IonicPage, NavController, LoadingController } from 'ionic-angular';
import { DashboardPage } from '../dashboard/dashboard';
import { AuthProvider } from '../../providers/auth/auth';
import { Storage } from '@ionic/storage';

@IonicPage()
@Component({
  selector: 'page-login',
  templateUrl: 'login.html',
})
export class LoginPage {

  constructor(public navCtrl: NavController, 
      public loadingController: LoadingController,
      public authService: AuthProvider,
      public storage: Storage) {

  }

  auth() {

  }

  dashboard() {

    this.authService.loginUser("test1", "1234").subscribe((result) =>{
      console.log(`result :: ${JSON.stringify(result)}`);

      if(result.sessionToken){
        this.set('token', result.sessionToken);
    }
      this.navCtrl.setRoot(DashboardPage)

  }) 
  }

  ionViewDidLoad() {
    console.log('ionViewDidLoad LoginPage');
    this.auth();
  }

  public set(settingName, value){
      return this.storage.set(`setting:${ settingName }`,value);
  }

  async presentLoading() {
    const loading = await this.loadingController.create({
      duration: 2000
    });
    return await loading.present();
  }

}

auth.js

@Injectable()
export class AuthProvider {

  constructor(public http: HttpClient) {
    console.log('Hello AuthProvider Provider');
  }

  loginUser (email : string, password : string) : Observable <any> {
    const headers = {
      headers: new HttpHeaders({
        'Content-Type':  'application/json'
      })
    }
    return this.http.post <any> ('http://api/auth/session',{
        "username": email,
        "password":password
    }, headers);
  }

}

Это весь мой код.Пожалуйста, помогите.

...