tp5.1 使用Composer安装vendor扩展包firebase php-jwt token验证 API

PHP有很多jwt包,包括比如:lcobucci/jwt,我这里使用firebase。可以从 git地址 下载

一、首先安装Composer,已经安装就跳过

不会的看这里:https://blog.csdn.net/haibo0668/article/details/80435529

二、安装think-captcha验证码包

1、打开电脑CMD命令窗口,然后进入项目\vendor\topthink目录下,就可以运行命令

进入E盘方法:

tp5.1 使用Composer安装vendor扩展包firebase php-jwt token验证 API

composer require firebase/php-jwt

安装成功:\vendor\firebase

tp5.1 使用Composer安装vendor扩展包firebase php-jwt token验证 API

控制器引用:use \Firebase\JWT\JWT; //导入JWT

tp5.1 使用Composer安装vendor扩展包firebase php-jwt token验证 API

<?php
namespace app\api\controller\v1;
use \Firebase\JWT\JWT; //导入JWT

class Index extends Common{
  
	public function index()
	{
		$key = '[email protected]_45'; //key
		$time = time(); //当前时间

		//公用信息
		$token = [
        	'iss' => 'http://www.helloweba.net', //签发者 可选
            'iat' => $time, //签发时间
            'data' => [ //自定义信息,不要定义敏感信息
             	'userid' => 1,
            ]
        ];

		$access_token = $token; // access_token
		$access_token['scopes'] = 'role_access'; //token标识,请求接口的token
		$access_token['exp'] = $time+7200; //access_token过期时间,这里设置2个小时

		$refresh_token = $token; //refresh_token
		$refresh_token['scopes'] = 'role_refresh'; //token标识,刷新access_token
		$refresh_token['exp'] = $time+(86400 * 30); //refresh_token过期时间,这里设置30天

		$jsonList = [
			'access_token'=>JWT::encode($access_token,$key),
			'refresh_token'=>JWT::encode($refresh_token,$key),
			'token_type'=>'bearer' //token_type:表示令牌类型,该值大小写不敏感,这里用bearer
		];
                Header("HTTP/1.1 201 Created");
		echo json_encode($jsonList); //返回给客户端token信息
	}
 

}

 

使用Composer安装,会在\vendor\composer\installed.json中注册,会写入相关扩展包的信息

tp5.1 使用Composer安装vendor扩展包firebase php-jwt token验证 API

使用教程:http://blog.daozys.com/goods_90.html

 

重新安装

Composer安装vendor扩展包失败,只要删除源码包,然后重新安装就行,installed.json中注册信息会自动更新的