Heck yes! jwt is working and middleware is CHECKING IT !!!!!!!

This commit is contained in:
James Tombleson 2024-03-27 21:55:25 -07:00
parent 2508dac595
commit faf0bec069
4 changed files with 12 additions and 11 deletions

View File

@ -18,7 +18,7 @@ type JwtToken struct {
jwt.RegisteredClaims jwt.RegisteredClaims
} }
func generateJwt() (string, error) { func generateJwt(username string) (string, error) {
//TODO use env here //TODO use env here
secret := []byte("ThisIsABadSecretDontReallyUseThis") secret := []byte("ThisIsABadSecretDontReallyUseThis")
@ -26,7 +26,7 @@ func generateJwt() (string, error) {
claims := token.Claims.(jwt.MapClaims) claims := token.Claims.(jwt.MapClaims)
claims["exp"] = time.Now().Add(10 * time.Minute) claims["exp"] = time.Now().Add(10 * time.Minute)
claims["authorized"] = true claims["authorized"] = true
claims["username"] = "someone" claims["username"] = username
tokenString, err := token.SignedString(secret) tokenString, err := token.SignedString(secret)
if err != nil { if err != nil {
@ -86,7 +86,7 @@ func (h *Handler) AuthLogin(c echo.Context) error {
return c.JSON(http.StatusInternalServerError, err) return c.JSON(http.StatusInternalServerError, err)
} }
token, err := generateJwt() token, err := generateJwt(username)
if err != nil { if err != nil {
return c.JSON(http.StatusInternalServerError, err) return c.JSON(http.StatusInternalServerError, err)
} }

View File

@ -38,17 +38,16 @@ func (h *Handler) HelloBody(c echo.Context) error {
if err != nil { if err != nil {
return c.JSON(http.StatusBadRequest, HelloWhoResponse{ return c.JSON(http.StatusBadRequest, HelloWhoResponse{
Success: false, Success: false,
Error: err.Error(), Error: err.Error(),
}) })
} }
return c.JSON(http.StatusOK, HelloWhoResponse{ return c.JSON(http.StatusOK, HelloWhoResponse{
Success: true, Success: true,
Message: fmt.Sprintf("Hello, %s", request.Name), Message: fmt.Sprintf("Hello, %s", request.Name),
}) })
} }
func (h *Handler) ProtectedRoute(c echo.Context) error {
func (h *Handler) ProtectedRoute(c echo.Context)error { return c.JSON(http.StatusOK, "You have a good bearer token!")
return nil }
}

View File

@ -43,7 +43,8 @@ func (h *Handler) Register(v1 *echo.Group) {
demo.GET("/hello/body", h.HelloBody) demo.GET("/hello/body", h.HelloBody)
protected := v1.Group("/demo/protected") protected := v1.Group("/demo/protected")
protected.GET("/", h.ProtectedRoute) protected.Use(echojwt.WithConfig(jwtConfig))
protected.GET("", h.ProtectedRoute)
//recipes := v1.Group("/recipe") //recipes := v1.Group("/recipe")

View File

@ -18,4 +18,5 @@ Content-Type: application/json
POST http://localhost:1323/api/v1/login?username=test POST http://localhost:1323/api/v1/login?username=test
### ###
GET http://localhost:1323/api/v1/demo/protected GET http://localhost:1323/api/v1/demo/protected
Authorization: Bearer