Estou com um problema ao realizar login em um servidor, este servidor está configurado com API REST do Codeigniter. Estou usando auth-service mas acredito que está depreciado.
Gostaria de saber se o meu código está com a solução correta, o mesmo está realizando o login com apenas um usuário, e está me dando a resposta como ok e id_processo que preciso usar na página HomePage. Segue link da imagem com o login e a resposta, nessa imagem com o id e senha que estou passando eu recebo a resposta e não está redirecionando para minha página HomePage. https://i.stack.imgur.com/AZabg.png Segue código abaixo do login.ts e auth-service.ts
login.ts
import { Component } from '@angular/core';
import { NavController, LoadingController, ToastController } from 'ionic-angular';
import { AuthService } from '../../providers/auth-service/auth-service';
import { HomePage } from '../home/home';
@Component({
selector: 'page-login',
templateUrl: 'login.html'
})
export class LoginPage {
loading: any;
loginData = { login:'', senha:'' };
data: any;
constructor(
public navCtrl: NavController,
public authService: AuthService,
public loadingCtrl: LoadingController,
private toastCtrl: ToastController
) {}
doLogin() {
console.log(this.loginData.login);
console.log(this.loginData.senha);
this.showLoader();
this.authService.login(this.loginData).then((result) => {
this.loading.dismiss();
this.data = result;
localStorage.setItem('token', this.data.access_token);
this.navCtrl.setRoot(HomePage);
}, (err) => {
this.loading.dismiss();
this.presentToast(err);
});
}
showLoader(){
this.loading = this.loadingCtrl.create({
content: 'Autenticando aguarde...'
});
this.loading.present();
}
presentToast(msg) {
let toast = this.toastCtrl.create({
message: msg,
duration: 3000,
position: 'bottom',
dismissOnPageChange: true
});
toast.onDidDismiss(() => {
console.log('Dismissed toast');
});
toast.present();
}
}
auth-service.ts
import { Injectable } from '@angular/core';
import { Http, Headers } from '@angular/http';
import 'rxjs/add/operator/map';
let apiUrl = 'http://appautoescola.com.br/unici_restserver/api/login';
export class User {
login: string;
senha: string;
constructor(login: string, senha: string) {
this.login = login;
this.senha = senha;
}
}
@Injectable()
export class AuthService {
constructor(public http: Http) {}
login(credentials) {
return new Promise((resolve, reject) => {
let headers = new Headers();
headers.append('Content-Type', 'application/json');
//headers.append('Content-Type', 'multipart/form-data');
this.http.post(apiUrl, JSON.stringify(credentials), {headers: headers})
.subscribe(res => {
resolve(res.json());
}, (err) => {
reject(err);
});
});
}
logout(){
return new Promise((resolve, reject) => {
let headers = new Headers();
headers.append('X-Auth-Token', localStorage.getItem('token'));
this.http.post(apiUrl, {}, {headers: headers})
.subscribe(res => {
localStorage.clear();
}, (err) => {
reject(err);
});
});
}
}