zoukankan      html  css  js  c++  java
  • cookie、 Session Storage 、 Local Storage

    问题描述:

    使用Ajax, Controller 传回来 JSON 字符串(待处理的信息)

    在 Ajax 中实现页面跳转 

    window.location.href="/jsp/index.jsp";

    可是有一个问题没有办法解决   把Ajax接收到Controller后台处理结果的值,传到新跳转的页面。

    问了大神,告诉我用 Local Storage  (解决了 Session 关闭即消失,cookie 易出错的问题)

    使用方法:

    controller

    // 登录成功
    map.put("code",1);
    map.put("msg","登录成功");

    map.put("nickname",user.getNickname());
    String result = new JSONObject(map).toString();
    return result;

    ajax

    $.ajax({
    async: false,//同步,待请求完毕后再执行后面的代码
    type: "POST",
    url: '/user/login.action',
    contentType: "application/x-www-form-urlencoded; charset=utf-8",
    data: $("#loginForm").serialize(),
    dataType: "json",
    success: function (data) {
    if(data.code==0) {
    alert(data.msg);
    } else {
    var nickname = data.nickname;
    localStorage.setItem("nickname",nikename||"");
    window.location.href="/jsp/index.jsp";
    }
    },
    error: function () {
    alert("数据获取失败")
    }
    })

    jsp

    <script>
    var nickname = localStorage.getItem("nickname");
    alert(nickname)
    </script>


    总结:
     前端页面存数据使用localStorage和sessionStorage,不使用cookies。就是为了方便,直接set和get方法就好了。
    sessionStorage:是浏览器一关闭就数据丢失
    localStorage:存储的数据天地同寿
    localStorage.setItem(k,v);
    v = localStorage.getItem(k); 





  • 相关阅读:
    MySQL
    MySQL
    MySQL
    javaScript之深度理解原型链
    javaScript之this的五种情况
    ES6之箭头函数中的this
    javaScript之跨浏览器的事件对象
    javaScript之事件处理程序
    javaScript之promise
    VUE之使用百度地图API
  • 原文地址:https://www.cnblogs.com/dong-dong-1/p/8759792.html
Copyright © 2011-2022 走看看