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
Create the project using composer:
$ composer create-project chalasr/lexik-jwt-authentication-sandbox
Or clone it using git:
$ git clone https://github.com/chalasr/lexik-jwt-authentication-sandbox
Create the database schema:
$ cd lexik-jwt-authentication-sandbox
$ 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 route:
$ curl -H "Authorization: Bearer [TOKEN]" http://localhost:8000/api
-> Logged in as johndoe