欢迎您光临深圳塔灯网络科技有限公司!
电话图标 余先生:13699882642

网站百科

为您解码网站建设的点点滴滴

Laravel5 JWT

发表日期:2018-04 文章编辑:小灯 浏览次数:1072

在使用laravel集成的JWT的过程中遇到的坑

laravel官方的集成简介

环境:laravel5.3+window+phpstudy

正常的使用方式

//设置token $user = User::first(); //在这里会把user表中的所有字段都会添加进去payload中,在上一行代码使用User::select('id','name')->first()还是没有用,还是一样会把所有的字段都添加了 $token = JWTAuth::fromUser($user); //获取token //在请求中加上header,这个按照文档来 $user = JWTAuth::parseToken()->authenticate(); //这样可以拿到用户的信息了

如果想要自定义字段信息,就有可能遇下面问题

自定义数据

如果你按照官网的代码直接输入以上的代码,会提示异常:JWT payload does not contain the required claims,这是因为在config\jwt.php 中有一个参数

jwt.php
这里设置必须要有的payload,可以去掉

当你自定义完了数据了,没有文档说怎么取。通过查看vender发现在目录\vendor\tymon\jwt-auth\src\Providers\JWT\NamshiAdapter.php这个文件下有decode,他返回的是Payload对象继续寻找源码\vendor/tymon/jwt-auth/src/Payload.php文件中有get方法,这个获得自定义的claim 最终这样

获取解析

如果有不对的地方欢迎指正
个人博客


本页内容由塔灯网络科技有限公司通过网络收集编辑所得,所有资料仅供用户学习参考,本站不拥有所有权,如您认为本网页中由涉嫌抄袭的内容,请及时与我们联系,并提供相关证据,工作人员会在5工作日内联系您,一经查实,本站立刻删除侵权内容。本文链接:https://www.dengtar.com/18122.html
相关企业建站知识
    SQL执行错误,请检查