LaravelPackages.net
Acme Inc.
Toggle sidebar
brenodouglas/laraveljwt

Package Jwt Laravel

17
1
0.2
About brenodouglas/laraveljwt

brenodouglas/laraveljwt is a Laravel package for package jwt laravel. It currently has 1 GitHub stars and 17 downloads on Packagist (latest version 0.2). Install it with composer require brenodouglas/laraveljwt. Discover more Laravel packages by brenodouglas or browse all Laravel packages to compare alternatives.

Last updated

Installation

1. Depedency

Using composer, execute the following command to automatically update your composer.json:

composer require brenodouglas/laraveljwt

or manually update your composer.json file

{
    "require": {
        "brenodouglas/laraveljwt": "^0.1.0"
    }
}

2. Provider

You need to update your application configuration in order to register the package, so it can be loaded by Laravel. Just update your config/app.php file adding the following code at the end of your 'providers' section:

// file START ommited
    'providers' => [
        // other providers ommited
        \LaravelJwt\JwtProvider::class,
    ],
// file END ommited

3. Publishing configuration file

To publish the default configuration file

php artisan vendor:publish

4. Using the middleware

To protect your routes, you can use the built-in middlewares.

Verify token and regenerate new token in get or header with key 'access-token' : authjwt

Route::get('foo', ['middleware' => ['authjwt'], function()
{
    return 'Yes I can!';
}]);

Or within controllers:

$this->middleware('authjwt');

5. Auth and Facade

Register facade and use Jwt authentication. Just update your config/app.php file adding the following code at the end of your 'aliases' section:

// file START ommited
    'aliases' => [
        // other aliases ommited
       'JWT' => \LaravelJwt\Facades\JwtAuthFacade::class
    ],
// file END ommited

One example route auth and protected route with jwt:

Route::post("auth", function(\Illuminate\Http\Request $request) {
    return response()->json(['token'=> \JWT::authenticate($request)]);
});

Route::group(['middleware' => ['authjwt']], function($router) {
    $router->get('users', function() {
        return 'Yes, a can!';
    });
});

Send POST for 'auth' route with raw body json:

{
    "email": "[email protected]",
    "password": "password"
}

The return is json with a key 'token'.

Comments