Downloads
Stars
Version
Laravel JWT auth service package – this is just a wrapper over a tymon/jwt-auth
package that includes services, controllers and a factory.
Contains:
composer require diplodocker/auth-service
User
modelDiplodocker\Services\Contracts\AuthorizationInterface
Diplodocker\Services\Concerns\CanUseAuthorizationTokens
(or implement methods from trait)TABLE_NAME
and ATTR_EMAIL
constants to User
model<?php
declare(strict_types=1);
namespace App\Models;
use Diplodocker\Services\Concerns\CanUseAuthorizationTokens;
use Diplodocker\Services\Contracts\AuthorizationInterface;
use Illuminate\Foundation\Auth\User as Authenticatable;
class User extends Authenticatable implements AuthorizationInterface
{
// ...
use CanUseAuthorizationTokens;
public const TABLE_NAME = 'users';
public const ATTR_EMAIL = 'email';
// ...
}
AppServiceProvider
or BindServiceProvider
boot
methodExample:
<?php
declare(strict_types=1);
namespace App\Providers;
use App\Models\User;
use Illuminate\Support\ServiceProvider;
use Diplodocker\Services\Contracts\AuthorizationInterface;
class AppServiceProvider extends ServiceProvider
{
public function boot()
{
$this->app->bind(
AuthorizationInterface::class,
User::class
);
}
}
auth
config'defaults' => [
+ 'guard' => 'api',
],
'guards' => [
'api' => [
+ 'driver' => 'jwt',
...
],
],
php artisan jwt:secret
Method | URI | Route | Required params |
---|---|---|---|
GET |
auth/check |
auth-service.check |
none |
POST |
auth/login |
auth-service.login |
email , password |
GET |
auth/logout |
auth-service.logout |
none |
POST |
auth/register |
auth-service.register |
email , password |