Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- login(username: string, password: string) {
- let reqUrl = AppSettings.__USER_TOKEN_URL;
- let reqHeaders = this.authConfig.token.headers;
- let reqBody = encodeURI(
- this.authConfig.token.body
- .replace(/{{ username }}/g, username)
- .replace(/{{ password }}/g, password));
- //
- // Get token, then get user identity, if login successfull.
- //
- return this.http.post(reqUrl, reqBody, reqHeaders)
- .map((response) => this.getIdentity(response))
- .catch(this.handleErr);
- }
- private getIdentity(response: Response) {
- //
- // Get user identity based on token.
- //
- let body = response.json();
- let token = body.access_token;
- if (null != token && undefined != token) {
- this.authConfig
- .identity
- .headers
- .headers.set('authorization', 'Bearer ' + token);
- let reqUrl = AppSettings.__USER_IDENTITY_URL
- let reqHeaders = this.authConfig.identity.headers;
- let reqbody = this.authConfig.identity.body;
- return this.http.post(reqUrl, reqbody, reqHeaders)
- .map((response) => this.setUser(response))
- .catch(this.handleErr)
- .subscribe();
- }
- }
- login() {
- this.loading = true;
- this.authenticationService.login(this.model.username, this.model.password).subscribe(
- data => { },
- error => { console.log('Error authenticating: ' + error); },
- () => { this.router.navigate([this.returnUrl]) });
- }
- private getIdentity(response: Response) {
- //
- // Get user identity based on token.
- //
- let body = response.json();
- let token = body.access_token;
- if (null != token && undefined != token) {
- this.authConfig
- .identity
- .headers
- .headers.set('authorization', 'Bearer ' + token);
- let reqUrl = AppSettings.__USER_IDENTITY_URL
- let reqHeaders = this.authConfig.identity.headers;
- let reqbody = this.authConfig.identity.body;
- return this.http.post(reqUrl, reqbody, reqHeaders)
- .map((response) => this.setUser(response))//return observable.
- }
- }
- return this.http.post(reqUrl, reqBody, reqHeaders)
- .switchMap((response) => this.getIdentity(response))
- .catch(this.handleErr);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement