• laravel 前后端分离 token


    由于自己开发的项目中用到了 JWT 技术,前端采用了 Vue.js 框架,后端采用了 CodeIgniter 框架,故作此文帮助使用相同技术栈的朋友们。

    具体思路如下:
    把后端生成的 JWT token 存入 localStorage,然后前端切换路由(刷新页面)的时候,通过 Ajax 请求的时候带上这个 token,提交给后端判断当前的 token 是否有效,后端返回结果。

    JWT 用处很多,可以用于后台权限的限制、接口安全性校验。

    https://segmentfault.com/a/1190000010444825

    https://blog.sakuradon.com/index.php/archives/349/

    https://jwt-auth.readthedocs.io/en/develop/quick-start/

    https://medium.com/employbl/build-authentication-into-your-laravel-api-with-json-web-tokens-jwt-cd223ace8d1a

    https://jwt.io/introduction/

    http://www.luohun.org/index.php/archives/27//www/wn-kiki-admin-server/app/User.php

        /**
         * 关闭 递增
         */
        public $incrementing = false;
        /**
         * 关闭 创建时间 与 更新时间的自动维护
         */
        public $timestamps = false;
    
        /**
         * The attributes that should be hidden for arrays.
         *
         * @var array
         */
        protected $hidden = [
            'password', 'remember_token',
        ];
    }
    

    路由:

    Route::group(['namespace' => 'Home','middleware' => ['api','response']],function (){
        //商品列表+详情
        Route::resource('/goodslist','GoodsController');
        //商品分类
        Route::resource('/class','ClassController');
        //需要登陆才能查看的接口
        Route::group(['middleware' => ['jwt.auth']],function (){
            //购物车
            Route::resource('/cart','CartController');
        });
    });
    

    0x03 创建token

    需要引入的:
    use Appuser;
    use JWTAuth;
    
    //查询一条数据,并输出token
    
     $user = User::first();
    
        $token = JWTAuth::fromUser($user);
    
    

    0x04 获取token

    
    
    
    public function index(Response $response)
        {
            //获取用户信息
            $user = JWTAuth::toUser(Input::get('token'));
            //获取购物车信息
            $cart = self::$cartService->getCart($user->id);
            //判断是否有值
            if (empty($cart) || ($cart->count() <= 0)){
                return $response->setStatusCode(404);
            }
            return $cart;
        }


    http://www.sunfengxiang.com/1097.html

    Json Web Token(JWT)简介



    https://learnku.com/articles/10885/full-use-of-jwt 
  • 相关阅读:
    【Linux学习七】软件安装
    【Linux学习六】用户管理
    【Linux学习五】文本处理
    【Linux学习四】正则表达式
    【Linux学习三】VI/VIM全屏文本编辑器
    【Linux学习二】文件系统
    【Linux学习一】命令查看与帮助
    【安装虚拟机四】设置快照和克隆
    【安装虚拟机三】设置Linux IP地址
    SpringBoot之定时任务详解
  • 原文地址:https://www.cnblogs.com/agang-php/p/10468509.html
Copyright © 2020-2023  润新知