diff --git a/controllers/auth.ctrl.go b/controllers/auth.ctrl.go index 0780566..618fae5 100644 --- a/controllers/auth.ctrl.go +++ b/controllers/auth.ctrl.go @@ -44,7 +44,7 @@ func (controller *AuthController) Auth(c echo.Context) error { accessToken, refreshToken, err := controller.svc.GenerateToken(c.Request().Context(), body.Login, body.Password, body.RefreshToken) if err != nil { - return c.JSON(http.StatusBadRequest, responses.BadAuthError) + return c.JSON(http.StatusUnauthorized, responses.BadAuthError) } return c.JSON(http.StatusOK, &AuthResponseBody{ diff --git a/integration_tests/auth_test.go b/integration_tests/auth_test.go index dfa3049..ac19437 100644 --- a/integration_tests/auth_test.go +++ b/integration_tests/auth_test.go @@ -128,7 +128,7 @@ func (suite *UserAuthTestSuite) TestAuthWithExpiredRefreshToken() { controller = controllers.NewAuthController(suite.Service) assert.NoError(suite.T(), controller.Auth(c)) errorResponse := &responses.ErrorResponse{} - assert.Equal(suite.T(), http.StatusBadRequest, rec.Code) + assert.Equal(suite.T(), http.StatusUnauthorized, rec.Code) assert.NoError(suite.T(), json.NewDecoder(rec.Body).Decode(errorResponse)) assert.Equal(suite.T(), responses.BadAuthError.Code, errorResponse.Code) assert.Equal(suite.T(), responses.BadAuthError.Message, errorResponse.Message) @@ -171,7 +171,7 @@ func (suite *UserAuthTestSuite) TestAuthWithInvalidSecretRefreshToken() { controller = controllers.NewAuthController(suite.Service) assert.NoError(suite.T(), controller.Auth(c)) errorResponse := &responses.ErrorResponse{} - assert.Equal(suite.T(), http.StatusBadRequest, rec.Code) + assert.Equal(suite.T(), http.StatusUnauthorized, rec.Code) assert.NoError(suite.T(), json.NewDecoder(rec.Body).Decode(errorResponse)) assert.Equal(suite.T(), responses.BadAuthError.Code, errorResponse.Code) assert.Equal(suite.T(), responses.BadAuthError.Message, errorResponse.Message) @@ -213,7 +213,7 @@ func (suite *UserAuthTestSuite) TestAuthWithInvalidUserIdRefreshToken() { controller = controllers.NewAuthController(suite.Service) assert.NoError(suite.T(), controller.Auth(c)) errorResponse := &responses.ErrorResponse{} - assert.Equal(suite.T(), http.StatusBadRequest, rec.Code) + assert.Equal(suite.T(), http.StatusUnauthorized, rec.Code) assert.NoError(suite.T(), json.NewDecoder(rec.Body).Decode(errorResponse)) assert.Equal(suite.T(), responses.BadAuthError.Code, errorResponse.Code) assert.Equal(suite.T(), responses.BadAuthError.Message, errorResponse.Message) @@ -249,7 +249,7 @@ func (suite *UserAuthTestSuite) TestAuthWithAccessToken() { controller = controllers.NewAuthController(suite.Service) assert.NoError(suite.T(), controller.Auth(c)) errorResponse := &responses.ErrorResponse{} - assert.Equal(suite.T(), http.StatusBadRequest, rec.Code) + assert.Equal(suite.T(), http.StatusUnauthorized, rec.Code) assert.NoError(suite.T(), json.NewDecoder(rec.Body).Decode(errorResponse)) assert.Equal(suite.T(), responses.BadAuthError.Code, errorResponse.Code) assert.Equal(suite.T(), responses.BadAuthError.Message, errorResponse.Message) @@ -270,7 +270,7 @@ func (suite *UserAuthTestSuite) TestAuthWithNotParseableRefreshToken() { controller := controllers.NewAuthController(suite.Service) assert.NoError(suite.T(), controller.Auth(c)) errorResponse := &responses.ErrorResponse{} - assert.Equal(suite.T(), http.StatusBadRequest, rec.Code) + assert.Equal(suite.T(), http.StatusUnauthorized, rec.Code) assert.NoError(suite.T(), json.NewDecoder(rec.Body).Decode(errorResponse)) assert.Equal(suite.T(), responses.BadAuthError.Code, errorResponse.Code) assert.Equal(suite.T(), responses.BadAuthError.Message, errorResponse.Message) diff --git a/lib/tokens/jwt.go b/lib/tokens/jwt.go index 46b7c67..7e0129a 100644 --- a/lib/tokens/jwt.go +++ b/lib/tokens/jwt.go @@ -25,7 +25,7 @@ func Middleware(secret []byte) echo.MiddlewareFunc { config.SigningKey = secret config.ErrorHandlerWithContext = func(err error, c echo.Context) error { c.Logger().Error(err) - return echo.NewHTTPError(http.StatusBadRequest, echo.Map{ + return echo.NewHTTPError(http.StatusUnauthorized, echo.Map{ "error": true, "code": 1, "message": "bad auth", diff --git a/main.go b/main.go index 3c96bb1..eca5682 100644 --- a/main.go +++ b/main.go @@ -94,7 +94,8 @@ func main() { // Setup exception tracking with Sentry if configured if c.SentryDSN != "" { if err = sentry.Init(sentry.ClientOptions{ - Dsn: c.SentryDSN, + Dsn: c.SentryDSN, + IgnoreErrors: []string{"401"}, }); err != nil { logger.Errorf("sentry init error: %v", err) }