thinkphp6生成token怎么弄_thinkphp5.1 使用php - jwt 生成token方法

1. 使用composer require firebase/php-jwt 安装  或直接用:https://github.com/firebase/php-jwt下载 手动放入项目中,

2.将src下的4个PHP文件放入think下(我用的是thinkphp5.1)修改命名空间 namespase think;

3.创建控制器Login.php 和 ResponseJson.php

.

"", //签发者 可以为空

"aud"=>"", //面象的用户,可以为空

"iat" => config('jwt.lat'), //签发时间

"nbf" => config('jwt.nbf'), //在什么时候jwt开始生效 (这里表示生成10秒后才生效)

"exp" => config('jwt.exp'), //token 过期时间

"uid" => '12', //记录的userid的信息,这里是自已添加上去的,如果有其它信息,可以再添加数组的键值对

'password' => '123456',

'mobile' => '12345678901', // 电话号码

];

$jwtToken = JWT::encode($jwtData, $key);

return $this->jsonSuccessData([

'token' =>$jwtToken,

]);

}

}

jsonResponse($code,$message,$data);

}

// app接口请求成功的返回

public function jsonSuccessData($data = [])

{

return $this->jsonResponse(0,'success',$data);

}

// 返回一个json

private function jsonResponse($code,$message,$data = [])

{

$content = [

'code'=>$code,

'message'=>$message,

'data'=>$data,

];

return json_encode($content);

}

}

5.在config下创建jwt.php配置文件,在Login控制器中用 config('jwt.key');来调用配置参数,jwt.php代码如下

'yangguang', //自定义key的值

'lat' => time(), // 签发时间

'nbf' => time()+10, // 生效时间

'exp' => time()+24 * 3600 , // 过期时间

];

4.创建控制器Login.php 和 ResponseJson.php

.

"", //签发者 可以为空

"aud"=>"", //面象的用户,可以为空

"iat" => config('jwt.lat'), //签发时间

"nbf" => config('jwt.nbf'), //在什么时候jwt开始生效 (这里表示生成10秒后才生效)

"exp" => config('jwt.exp'), //token 过期时间

"uid" => '123', //记录的userid的信息,这里是自已添加上去的,如果有其它信息,可以再添加数组的键值对

'password' => '123456',

'mobile' => '13180808004',

];

$jwtToken = JWT::encode($jwtData, $key);

return $this->jsonSuccessData([

'token' =>$jwtToken,

]);

}

}

jsonResponse($code,$message,$data);

}

// app接口请求成功的返回

public function jsonSuccessData($data = [])

{

return $this->jsonResponse(0,'success',$data);

}

// 返回一个json

private function jsonResponse($code,$message,$data = [])

{

$content = [

'code'=>$code,

'message'=>$message,

'data'=>$data,

];

return json_encode($content);

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值