angular2-devise-token-auth
Version:
Helper library for working with Devise Token Auth in your Angular 2 applications
35 lines (29 loc) • 980 B
text/typescript
import {Injectable} from '@angular/core';
import {Response} from '@angular/http';
import {Observable} from 'rxjs/Observable';
import 'rxjs/add/operator/do';
import {AuthHttp} from './auth.http';
import {SessionController} from './session.controller';
()
export class AuthService {
constructor(private http:AuthHttp, private endpoint:string) {
}
signUp(params:Object):Observable<Response> {
return this.http.post(this.endpoint, JSON.stringify(params))
}
signIn(params:Object):Observable<Response> {
return this.http.post(`${this.endpoint}/sign_in`, JSON.stringify(params))
.do((response:Response) => {
SessionController.setUser(response.headers);
});
}
signOut():Observable<Response> {
return this.http.delete(`${this.endpoint}/sign_out`)
.do(() => {
SessionController.removeUser();
});
}
validateToken():Observable<Response> {
return this.http.get(`${this.endpoint}/validate_token`);
}
}