具体流程

 

 

 

 

准备工作

安装js-cookie插件把用户信息放进cookie

  npm install js-cookie
引入cookie
import cookie from 'js-cookie'
 

代码实现

 //登录的方法
      submitLogin() {
        //第一步 调用接口进行登录,返回token字符串
        loginApi.submitLoginUser(this.user) 
           .then(response => {
             //第二步 获取token字符串放到cookie里面
             //第一个参数cookie名称,第二个参数值,第三个参数作用范围
             cookie.set('guli_token',response.data.data.token,{domain: 'localhost'})
              //第三步 在全局请求中设置request 拦截器...
             
              //第四步 调用接口 根据token获取用户信息,为了首页面显示
              loginApi.getLoginUserInfo()
                .then(response => {
                  this.loginInfo = response.data.data.userInfo
                  //获取返回用户信息,放到cookie里面
                  cookie.set('guli_ucenter',this.loginInfo,{domain: 'localhost'})

                  //跳转页面
                  window.location.href = "/";
                })
           })
      }

 

// 第三步.http request 拦截器(写在封装axios请求中)
service.interceptors.request.use(
  config => {
  //debugger
  if (cookie.get('guli_token')) {
    config.headers['token'] = cookie.get('guli_token');
  }
    return config
  },
  err => {

  return Promise.reject(err);

})
 
 
 
在数据显示界面取出cookie
 
方法
 showInfo(){
      var userStr=cookie.get('guli_ucenter')
      if(userStr){
        this.loginInfo=JSON.parse(userStr)//cookie中得到的都是字符串,需要转化
      }

 

退出方法

 

logout(){
       cookie.set('guli_token','',{domain: 'localhost'})
       cookie.set('guli_ucenter','',{domain: 'localhost'})
       window.location.href="/"
    
    }

 

 
 
posted on   upupup-999  阅读(1648)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!



点击右上角即可分享
微信分享提示