zoukankan      html  css  js  c++  java
  • TP5.1验证Token和Electron-vue头部携带Token

    TP5.1验证Token和Electron-vue头部携带Token

    博客说明

    文章所涉及的资料来自互联网整理和个人总结,意在于个人学习和经验汇总,如有什么地方侵权,请联系本人删除,谢谢!

    介绍

    在做一个Electron-vue的项目的时候需要使用到登录,使用TP5.1作为后台框架,正规的流程是在Electron-vue中携带Token信息,在TP5.1中验证Token来判断是否过期

    Electron-vue头部携带Token

    在配置拦截器的时候配置请求头

    image-20200710130323399

    // request拦截器
    service.interceptors.request.use(config => {
      if (store.getters.token) {
        config.headers['Authorization'] = store.getters.token// 让每个请求携带自定义token 请根据实际情况自行修改
      }
      return config
    }, error => {
      // Do something with request error
      console.log(error) // for debug
      Promise.reject(error)
    })
    

    注意这个Authorization必须是在后端跨域的Access-Control-Allow-Headers参数中有的,比如

    Access-Control-Allow-Origin:*
    Access-Control-Allow-Methods:GET, POST, PATCH, PUT, DELETE
    Access-Control-Allow-Headers:Authorization, Content-Type, If-Match, If-Modified-Since, If-None-Match, If-Unmodified-Since, X-Requested-With
    

    TP5.1验证Token

    首先在路由的时候设置中间件

    image-20200710130712029

    然后我们的验证就写在这个中间件里面

    public function handle($request, Closure $next)
        {
            // 获取头部信息
            $param = $request->header();
            // 不含token
            if (!array_key_exists('authorization', $param)) TApiException('非法token,禁止操作', 20003, 200);
            // 当前用户token是否存在(是否登录)
            $token = $param['authorization'];
            $user = Cache::get($token);
            // 验证失败(未登录或已过期)
            if (!$user) TApiException('非法token,请重新登录', 20003, 200);
            // 将token和userid这类常用参数放在request中
            $request->userToken = $token;
            return $next($request);
        }
    

    这样经过配置过的路由都会验证Token,以此来判断用户是否登录

    感谢

    万能的网络

    以及勤劳的自己

    关注公众号: 归子莫,获取更多的资料,还有更长的学习计划

  • 相关阅读:
    洛谷P2192HXY玩卡片
    洛谷P1876开灯
    洛谷 P2515 [HAOI2010]软件安装(缩点+树形dp)
    洛谷 P2059 [JLOI2013]卡牌游戏(概率dp)
    洛谷 P3380 【模板】二逼平衡树(树套树)
    洛谷 P3157 [CQOI2011]动态逆序对(树套树)
    CF914E Palindromes in a Tree(点分治)
    洛谷 P2542 [AHOI2005]航线规划(Link-cut-tree)
    洛谷 P2495 [SDOI2011]消耗战(虚树,dp)
    洛谷 P4036 [JSOI2008]火星人(splay+字符串hash)
  • 原文地址:https://www.cnblogs.com/guizimo/p/13278704.html
Copyright © 2011-2022 走看看