zoukankan      html  css  js  c++  java
  • sessionStorage 前端页面跳转管理

    对应一下一种情况的业务场景:

    如果实现如果用户没有登录成功则无权限访问view A、view B、view C页面,且跳转至login view

    在login.view的登录ajax请求的success分支中添加如下:

      

    $.ajax({
    url :"",
    type:"get",
    dataType : "json" ,
    success : function(res){
        sessionStorage.setItem("isLoad",true) //如果这里是一个页面路由表则可以做路由控制展示了。
      },
    error : function(res){
    console.log('res = ',res);
    }
    })

      在view A等其他页面的初始化渲染时候添加如下:

    var isLoaded = sessionStorage.getItem("isLoad");
    if(!isLoaded){
    window.location = ("../index.html"); //登录页面
    }

      如此一来每次登录到该session域内,如果没有登录成功(取得认证通过)。则就没有访问其他页面的权限。

          注:之所以使用sessionStorage是因为sessionStorage在关闭后都会被清空。符合安全规则。sessionStorage就相当于单页面应用中的一个全局变量(类似于angular中的RootScope)可以在所有的view中共享。介于此也可以通过sessionStorage来实现angular的RootScope的一些机制。 这里只是做了一个是否登录的判断,感兴趣的朋友可以在此基础上实现路由的管理。

    学而时习之不亦悦乎。
  • 相关阅读:
    如何判断PHP 是ts还是nts版的
    让IE支持placeholder属性
    解决点击浏览器后退按钮页面过期的问题
    git记住用户名密码
    php保存base64数据
    azure注册码
    SQL Server 2008 R2密钥序列号
    SQL允许远程访问
    PHP生成表格
    PHP发起get post put delete请求
  • 原文地址:https://www.cnblogs.com/xianZJ/p/4687994.html
Copyright © 2011-2022 走看看