mirror of
https://github.com/labstack/echo.git
synced 2025-01-03 22:52:19 +02:00
9918c9b4e9
Signed-off-by: Vishal Rana <vishal.rana@verizon.com>
1.3 KiB
1.3 KiB
+++ title = "JWT Example" description = "JWT example for Echo" [menu.side] name = "JWT" identifier = "jwt-recipe" parent = "recipes" weight = 11 +++
- JWT authentication using HS256 algorithm.
- JWT is retrieved from
Authorization
request header.
Server using Map claims
server.go
{{< embed "jwt/map-claims/server.go" >}}
Server using custom claims
server.go
{{< embed "jwt/custom-claims/server.go" >}}
Client
curl
Login
Login using username and password to retrieve a token.
curl -X POST -d 'username=jon' -d 'password=shhh!' localhost:1323/login
Response
{
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE0NjE5NTcxMzZ9.RB3arc4-OyzASAaUhC2W3ReWaXAt_z2Fd3BN4aWTgEY"
}
Request
Request a restricted resource using the token in Authorization
request header.
curl localhost:1323/restricted -H "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE0NjE5NTcxMzZ9.RB3arc4-OyzASAaUhC2W3ReWaXAt_z2Fd3BN4aWTgEY"
Response
Welcome Jon Snow!
Source Code
- [With default Map claims]({{< source "jwt/map-claims" >}})
- [With custom claims]({{< source "jwt/custom-claims" >}})