brenodouglas / laraveljwt
Jwt Laravel 包
0.2
2016-03-11 12:58 UTC
Requires
- illuminate/contracts: ^5.2
- illuminate/http: ^5.2
- illuminate/support: ^5.2
- lcobucci/jwt: ^3.1
Requires (Dev)
- phpunit/phpunit: 4.*
This package is not auto-updated.
Last update: 2024-09-20 18:48:28 UTC
README
1. 依赖
使用 composer,执行以下命令以自动更新您的 composer.json
composer require brenodouglas/laraveljwt
或者手动更新您的 composer.json
文件
{ "require": { "brenodouglas/laraveljwt": "^0.1.0" } }
2. 提供者
您需要更新应用程序配置以注册包,使其可以被 Laravel 加载。只需更新您的 config/app.php
文件,在 'providers'
部分的末尾添加以下代码
// file START ommited 'providers' => [ // other providers ommited \LaravelJwt\JwtProvider::class, ], // file END ommited
3. 发布配置文件
发布默认配置文件
php artisan vendor:publish
4. 使用中间件
为了保护您的路由,您可以使用内置的中间件。
在 get 或 header 中验证令牌并在 'access-token' 键中重新生成新令牌:authjwt
Route::get('foo', ['middleware' => ['authjwt'], function() { return 'Yes I can!'; }]);
或者在控制器中
$this->middleware('authjwt');
5. 身份验证和 Facade
注册 Facade 并使用 Jwt 验证。只需更新您的 config/app.php
文件,在 'aliases'
部分的末尾添加以下代码
// file START ommited 'aliases' => [ // other aliases ommited 'JWT' => \LaravelJwt\Facades\JwtAuthFacade::class ], // file END ommited
一个示例路由身份验证和带 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!'; }); });
为 'auth' 路由发送 POST,原始正文为 json
{ "email": "email@foryouruser.com", "password": "password" }
返回的是包含 'token' 键的 json。