功能為如果有Token則可以訪問地址,如無則跳轉到登錄頁面
代碼如下
const routes = [
{
path: '/',
rediret: Login
},
{
path: '/login',
component: Login
},
{
path: '/home',
component: Home
}
]
const router = new VueRouter({
routes
})
// 掛在路由守衛
router.beforeEach((to, form, next) => {
// to 將要訪問的路徑
// from 代表從哪個路徑跳轉而來
// next 是一個函數,表示放行
// next() 放行 next('/login') 強制跳轉
if (to.path === '/login') return next()
// 獲取token
const tokenStr = window.sessionStorage.getItem('token')
if (!tokenStr) return next('/login')
next()
})
export default router
下面為asp.net mvc 中驗證的問題,使用的為session
-
新建個BaseController.cs 用於存放session
-
為我們要保護的路由寫一個基礎類,我的例子為要保護AdminController,所以我建立了個AdminBaseController,里面代碼如下