@megakill/angular-token
v12.1.0-beta.0
Published
Updated to work with Angular 12.1.0 :)
Downloads
5
Maintainers
Readme
Updated to work with Angular 12.1.0 :)
🔑 Token based authentication service for Angular with interceptor and multi-user support. Works best with the devise token auth gem for Rails.
👋 This library has been renamed to Angular-Token! Please follow the migration guide.
Quick Links
- 🚀 View to demo on Stackblitz
- ✨ Learn about it on the docs site
- 🔧 Support us by contributing
Install
Set up a Rails with Devise Token Auth
Install Angular-Token via NPM with
npm install angular-token
Import and add
AngularTokenModule
to your main module and call the 'forRoot' function with the config. Make sure you haveHttpClientModule
imported too.import { AngularTokenModule } from 'angular-token'; @NgModule({ imports: [ ..., HttpClientModule, AngularTokenModule.forRoot({ ... }) ], declarations: [ ... ], bootstrap: [ ... ] })
(Maybe Optional) Fix injection context runtime error After installing this package, if you get an
Error: inject() must be called from an injection context
when running your app, add the following to your typescript path config in thetsconfig[.app].json
file:"paths": { "@angular/*": [ "./node_modules/@angular/*" ] }
Use
Register your user
constructor(private tokenService: AngularTokenService) { } this.tokenService.registerAccount({ login: '[email protected]', password: 'secretPassword', passwordConfirmation: 'secretPassword' }).subscribe( res => console.log(res), error => console.log(error) );
Sign in your user
constructor(private tokenService: AngularTokenService) { } this.tokenService.signIn({ login: '[email protected]', password: 'secretPassword' }).subscribe( res => console.log(res), error => console.log(error) );
Now you can use HttpClient to access private resources
constructor(http: HttpClient) { } this.http.get('private_resource').subscribe( res => console.log(res), error => console.log(error) );
Contributors
| Jan-Philipp Riethmacher | Arjen Brandenburgh | :---: | :---: |
License
The MIT License (see the LICENSE file for the full text)