exodusanto/laravel-concierge 问题修复 & 功能扩展

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

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

exodusanto/laravel-concierge

最新稳定版本:v0.6.0

Composer 安装命令:

composer require exodusanto/laravel-concierge

包简介

Api token authentication for laravel projects

README 文档

README

Latest Version on Packagist Build Status Total Downloads

Extend the base solution from Laravel with some new features

  • Auto refresh user token on GET requests
  • Refresh/Revoke methods
  • Blade directive

Installation

You can install the package via composer:

composer require exodusanto/laravel-concierge

Usage

1. Migration

Migrate your user table with api_token and api_token_refreshed_at.

Schema::table('users', function (Blueprint $table) {
    $table->string('api_token')->nullable();
    $table->timestamp('api_token_refreshed_at')->nullable();
});

api_token_refreshed_at

This attribute is use to store the timestamp of api_token update

2. Model

Add RefreshApiToken trait and RefreshApiTokenContract contract to your model

class User extends BaseUser implements RefreshApiTokenContract
{
    use RefreshApiToken;
}

3. Config

Publish concierge config

php artisan vendor:publish --tag=concierge-config

Use the same key to identify the right model in auth.providers and concierge.tokens_lifetime

// config/auth.php
'providers' => [
    'users' => [
        'driver' => 'eloquent',
        'model' => App\User::class,
    ],
]

// config/concierge.php
'tokens_lifetime' => [
    'users' => 10800 // 3h
]

4. Middleware

Append RefreshApiToken to your application web middleware group

// app/Http/Kernel.php
protected $middlewareGroups = [
    'web' => [
        ...
        \Exodusanto\Concierge\Http\Middleware\RefreshApiToken::class,
    ],

@Concierge

Concierge is shipped with a custom Blade directive, it will render the token of the authenticated user

@concierge

<!-- Rendered to -->
<script>
    __CONCIERGE__ = { "api_token": "XXXXXXXXXXXX" }
</script>

@Concierge options

@concierge($guard, $attributeName)

@concierge('other_guard', 'my_token')

<!-- Rendered to -->
<script>
    <!-- Token of other_guard authenticated user -->
    __CONCIERGE__ = { "my_token": "XXXXXXXXXXXX" }
</script>

Testing

composer test

Changelog

Please see CHANGELOG for more information what has changed recently.

Contributing

Please see CONTRIBUTING for details.

Security

If you discover any security related issues, please email info@antoniodalsie.com instead of using the issue tracker.

Credits

License

The MIT License (MIT). Please see License File for more information.

Laravel Package Boilerplate

This package was generated using the Laravel Package Boilerplate.

统计信息

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

GitHub 信息

  • Stars: 2
  • Watchers: 2
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2020-01-26