level51/silverstripe-jwt-utils 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

level51/silverstripe-jwt-utils

最新稳定版本:1.0.0

Composer 安装命令:

composer require level51/silverstripe-jwt-utils

包简介

Utilities for dealing with JWT in SilverStripe

README 文档

README

Build Status

Lean set of helper classes to deal with JWT in SilverStripe setups.

Install

composer require level51/silverstripe-jwt-utils
Module Version PHP Version
1.x >=8
0.x <8

Example

use Level51\JWTUtils\JWTUtils;
use Level51\JWTUtils\JWTUtilsException;

class MyTokenController extends Controller {

    private static $allowed_actions = ['token'];
    
    public function token() {
        try {
            $payload = JWTUtils::inst()->byBasicAuth($this->request);
            
            return json_encode($payload);
        } catch(JWTUtilsException $e) {
            return $this->httpError(403, $e->getMessage());
        }
    }
}

With correct config and credentials there will be a payload like the following:

{
	"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJtZW1iZXJJZCI6MSwiaXNzIjoiaHR0cDpcL1wvc2lsdmVyZ3JvdW5kLm1lXC8iLCJleHAiOjE1MTgyNzMwMjIsImlhdCI6MTUxNzY2ODIyMiwicmF0IjoxNTE3NjY4MjIyLCJqdGkiOiI0ZjIyMjViNS0wMzE5LTQ3YTMtYWNjMy1jOWJlNDk4MDc1NTIifQ.vQLLzmB7rWkwQDomAuC6Bfm-J0ITsIfFq4wL8UMAAJs",
	"member": {
		"id": 1,
		"email": "js@lvl51.de",
		"firstName": "Julian",
		"surname": "Scheuchenzuber"
	}
}

Config

Make sure to include an environment variable JWT_SECRET and pick a random value.

Level51\JWTUtils\JWTUtils:
  secret: '`JWT_SECRET`'          # Secret for signature. This is mandatory and there is no default value
  lifetime_in_days: 7             # Term of validity
  renew_threshold_in_minutes: 60  # Keep JWT for at least 60 minutes

API

  • static inst(): Get singleton instance
  • byBasicAuth($request, $includeMemberData: bool = true): array: Creates a new token from Basic Auth member data
  • renew($token: string): string: Checks if the given token is valid and needs to be renewed
  • check($token: string): bool: Checks if token is valid and non-expired

Maintainer

统计信息

  • 总下载量: 6.88k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 2
  • 点击次数: 0
  • 依赖项目数: 1
  • 推荐数: 0

GitHub 信息

  • Stars: 2
  • Watchers: 3
  • Forks: 5
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2018-02-03

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固