在离子3应用程序中使用JWT进行身份验证

时间:2018-03-29 15:04:02

标签: angular ionic3 jwt

我有一个离子3应用程序,我想使用touchId功能。

后端API正在.net。

中开发

对于我的身份验证模型,我认为在用户输入登录名和密码并由服务器进行身份验证后,它会发回JWT令牌。

我可以在本地存储令牌,然后每次用户使用touchId时,它会检查令牌是否存储在本地,然后将该令牌与服务器匹配,并允许访问。

这是如何运作的?

1 个答案:

答案 0 :(得分:4)

您可以使用angular2-jwt,它可以完美运行并自动发送您的令牌以及您的所有http请求,并且您可以非常轻松地管理您的令牌过期

你只能从离子存储器给你的配置文件中提供访问令牌的来源,这里是离子配置:

import { JwtModule, JWT_OPTIONS } from '@auth0/angular-jwt';
import { Storage } from '@ionic/storage';

export function jwtOptionsFactory(storage) {
return {
  tokenGetter: () => {
   return storage.get('access_token');
 }
}
}


@NgModule({

imports: [
 JwtModule.forRoot({
    jwtOptionsProvider: {
    provide: JWT_OPTIONS,
    useFactory: jwtOptionsFactory,
    deps: [Storage]
  }
})
]})