feat: add admin auth middleware

This commit is contained in:
yanghao05
2025-04-16 20:26:02 +08:00
parent 4a9836db68
commit 92a070cc81
5 changed files with 34 additions and 13 deletions

View File

@@ -16,10 +16,14 @@ type AuthBody struct {
Password string `json:"password" validate:"required"`
}
type TokenResponse struct {
Token string `json:"token"`
}
// Login
// @Router /v1/admin/auth [post]
// @Bind body body
func (ctl *auth) Login(ctx fiber.Ctx, body *AuthBody) (string, error) {
func (ctl *auth) Login(ctx fiber.Ctx, body *AuthBody) (*TokenResponse, error) {
if body.Username == "admin" && body.Password == "xixi@0202" {
claim := ctl.jwt.CreateClaims(jwt.BaseClaims{
UserID: 1,
@@ -27,9 +31,9 @@ func (ctl *auth) Login(ctx fiber.Ctx, body *AuthBody) (string, error) {
token, err := ctl.jwt.CreateToken(claim)
if err != nil {
return "", err
return nil, err
}
return token, nil
return &TokenResponse{Token: token}, nil
}
return "", fiber.ErrUnauthorized
return nil, fiber.ErrUnauthorized
}