This is a sample application for experimenting/demonstrating features of the powerful LexikJWTAuthenticationBundle bundle which provides authentication through JWT.
- Symfony ~3.1
- LexikJWTAuthenticationBundle ~2.0
Clone the project:
$ git clone https://github.com/chalasr/lexik-jwt-authentication-sandbox
Install the dependencies:
$ cd lexik-jwt-authentication-sandbox
$ composer install
Create the database schema:
$ php bin/console doctrine:database:create
$ php bin/console doctrine:schema:update --force
Run the web server:
$ php bin/console server:run
Register a new user:
$ curl -X POST http://localhost:8000/register -d _username=johndoe -d _password=test
-> User johndoe successfully created
Get a JWT token:
$ curl -X POST http://localhost:8000/login_check -d _username=johndoe -d _password=test
-> { "token": "[TOKEN]" }
Access a secured resource:
$ curl -H "Authorization: JWT [TOKEN]" http://localhost:8000/api
-> Logged in as johndoe
Here I am.