我正在创建一个离子应用程序。我完成了登录和注册。我使用JWT和登录页面,它将检查身份验证,如果令牌不存在或与服务器的令牌不同,它将不会被记录。当在Android Lollipop设备和iOS中运行Ionic Dev App时,这可以很好地工作。但是在Nougat版本中,这些方法不起作用。
login.ts:
ionViewDidLoad() {
console.log('ionViewDidLoad LoginPage');
this.showLoader();
//Check if already authenticated
this.authService.checkAuthentication().then((res) => {
console.log("Already authorized");
this.loading.dismiss();
this.navCtrl.setRoot(HomePage);
}, (err) => {
console.log("Not already authorized");
this.loading.dismiss();
});
}
showLoader(){
this.loading = this.loadingCtrl.create({
content: 'Authenticating...'
});
this.loading.present();
}
在Auth Provider中:
checkAuthentication(){
return new Promise((resolve, reject) => {
//Load token if exists
this.storage.get('token').then((value) => {
this.token = value;
console.log(this.token);
let headers = new Headers();
headers.append('Authorization', 'Bearer '+this.token);
this.http.get('http://139.59.35.176/api/users/1', {headers: headers})
.subscribe(res => {
resolve(res);
}, (err) => {
reject(err);
});
});
});
}
在Ionic Dev应用程序上运行时,我不知道如何获得控制台。也在这里加载屏幕
认证...
没有在牛轧糖的Android手机中解雇。我在这里缺少什么?
i在离子开发应用中也遇到了相同的问题。但是在构建了实时APK之后,我没有面对这个问题。因此,尝试构建您的APK。