找了半天,网上都没有这样的资料和文章。
angular4 angular2怎么做登录验证,angular身份认证。
用法,懂得router的用法,路由守卫的用法,然后在 路由守卫按照下面的逻辑编写,就跟以往session/cookie机制差不多了,浏览器的东西,不需要token机制,token得需要刷新过期时间,服务端写起来还更麻烦。
/**
* @Author: jiankian
* @About: 安浪创想出品,专注web技术到APP与api接口的全栈开发。
* @Site: http://www.anline.cn
*/
import { Injectable } from '@angular/core';
import { CanActivate, Router, ActivatedRouteSnapshot, RouterStateSnapshot } from '@angular/router';
@Injectable()
export class AuthGuardService implements CanActivate {
constructor(private router: Router) { }
canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): boolean {
if (sessionStorage.getItem('use_id') !== null) {
return true;
}
let url: string = state.url;
sessionStorage.setItem('redirectUrl', url);//这里可以忽略,这里是登陆成功后的页面而已,需要则加
this.router.navigate(['/login']);//这里是未登录状态下跳转登录页面的地址,自己写自己的地址。
return false;
}
}