chore: rename context name

This commit is contained in:
Steven 2023-09-17 16:21:11 +08:00
parent 75d152922e
commit 6cb493b4a1
8 changed files with 23 additions and 23 deletions

View File

@ -17,7 +17,7 @@ import (
const ( const (
// The key name used to store user id in the context // The key name used to store user id in the context
// user id is extracted from the jwt token subject field. // user id is extracted from the jwt token subject field.
UserIDContextKey = "user-id" userIDContextKey = "user-id"
) )
func extractTokenFromHeader(c echo.Context) (string, error) { func extractTokenFromHeader(c echo.Context) (string, error) {
@ -122,7 +122,7 @@ func JWTMiddleware(s *APIV1Service, next echo.HandlerFunc, secret string) echo.H
} }
// Stores userID into context. // Stores userID into context.
c.Set(UserIDContextKey, userID) c.Set(userIDContextKey, userID)
return next(c) return next(c)
} }
} }

View File

@ -32,7 +32,7 @@ func (s *APIV1Service) registerRedirectorRoutes(g *echo.Group) {
return echo.NewHTTPError(http.StatusNotFound, fmt.Sprintf("not found shortcut with name: %s", shortcutName)) return echo.NewHTTPError(http.StatusNotFound, fmt.Sprintf("not found shortcut with name: %s", shortcutName))
} }
if shortcut.Visibility != storepb.Visibility_PUBLIC { if shortcut.Visibility != storepb.Visibility_PUBLIC {
userID, ok := c.Get(UserIDContextKey).(int32) userID, ok := c.Get(userIDContextKey).(int32)
if !ok { if !ok {
return echo.NewHTTPError(http.StatusUnauthorized, "Unauthorized") return echo.NewHTTPError(http.StatusUnauthorized, "Unauthorized")
} }

View File

@ -81,7 +81,7 @@ type PatchShortcutRequest struct {
func (s *APIV1Service) registerShortcutRoutes(g *echo.Group) { func (s *APIV1Service) registerShortcutRoutes(g *echo.Group) {
g.POST("/shortcut", func(c echo.Context) error { g.POST("/shortcut", func(c echo.Context) error {
ctx := c.Request().Context() ctx := c.Request().Context()
userID, ok := c.Get(UserIDContextKey).(int32) userID, ok := c.Get(userIDContextKey).(int32)
if !ok { if !ok {
return echo.NewHTTPError(http.StatusUnauthorized, "missing user in session") return echo.NewHTTPError(http.StatusUnauthorized, "missing user in session")
} }
@ -129,7 +129,7 @@ func (s *APIV1Service) registerShortcutRoutes(g *echo.Group) {
if err != nil { if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("shortcut ID is not a number: %s", c.Param("shortcutId"))).SetInternal(err) return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("shortcut ID is not a number: %s", c.Param("shortcutId"))).SetInternal(err)
} }
userID, ok := c.Get(UserIDContextKey).(int32) userID, ok := c.Get(userIDContextKey).(int32)
if !ok { if !ok {
return echo.NewHTTPError(http.StatusUnauthorized, "missing user in session") return echo.NewHTTPError(http.StatusUnauthorized, "missing user in session")
} }
@ -196,7 +196,7 @@ func (s *APIV1Service) registerShortcutRoutes(g *echo.Group) {
g.GET("/shortcut", func(c echo.Context) error { g.GET("/shortcut", func(c echo.Context) error {
ctx := c.Request().Context() ctx := c.Request().Context()
userID, ok := c.Get(UserIDContextKey).(int32) userID, ok := c.Get(userIDContextKey).(int32)
if !ok { if !ok {
return echo.NewHTTPError(http.StatusUnauthorized, "missing user in session") return echo.NewHTTPError(http.StatusUnauthorized, "missing user in session")
} }
@ -263,7 +263,7 @@ func (s *APIV1Service) registerShortcutRoutes(g *echo.Group) {
if err != nil { if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("shortcut id is not a number: %s", c.Param("id"))).SetInternal(err) return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("shortcut id is not a number: %s", c.Param("id"))).SetInternal(err)
} }
userID, ok := c.Get(UserIDContextKey).(int32) userID, ok := c.Get(userIDContextKey).(int32)
if !ok { if !ok {
return echo.NewHTTPError(http.StatusUnauthorized, "missing user in session") return echo.NewHTTPError(http.StatusUnauthorized, "missing user in session")
} }

View File

@ -83,7 +83,7 @@ type PatchUserRequest struct {
func (s *APIV1Service) registerUserRoutes(g *echo.Group) { func (s *APIV1Service) registerUserRoutes(g *echo.Group) {
g.POST("/user", func(c echo.Context) error { g.POST("/user", func(c echo.Context) error {
ctx := c.Request().Context() ctx := c.Request().Context()
userID, ok := c.Get(UserIDContextKey).(int32) userID, ok := c.Get(userIDContextKey).(int32)
if !ok { if !ok {
return echo.NewHTTPError(http.StatusUnauthorized, "Missing auth session") return echo.NewHTTPError(http.StatusUnauthorized, "Missing auth session")
} }
@ -144,7 +144,7 @@ func (s *APIV1Service) registerUserRoutes(g *echo.Group) {
// GET /api/user/me is used to check if the user is logged in. // GET /api/user/me is used to check if the user is logged in.
g.GET("/user/me", func(c echo.Context) error { g.GET("/user/me", func(c echo.Context) error {
ctx := c.Request().Context() ctx := c.Request().Context()
userID, ok := c.Get(UserIDContextKey).(int32) userID, ok := c.Get(userIDContextKey).(int32)
if !ok { if !ok {
return echo.NewHTTPError(http.StatusUnauthorized, "missing auth session") return echo.NewHTTPError(http.StatusUnauthorized, "missing auth session")
} }
@ -182,7 +182,7 @@ func (s *APIV1Service) registerUserRoutes(g *echo.Group) {
if err != nil { if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("user id is not a number: %s", c.Param("id"))).SetInternal(err) return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("user id is not a number: %s", c.Param("id"))).SetInternal(err)
} }
currentUserID, ok := c.Get(UserIDContextKey).(int32) currentUserID, ok := c.Get(userIDContextKey).(int32)
if !ok { if !ok {
return echo.NewHTTPError(http.StatusUnauthorized, "missing user in session") return echo.NewHTTPError(http.StatusUnauthorized, "missing user in session")
} }
@ -254,7 +254,7 @@ func (s *APIV1Service) registerUserRoutes(g *echo.Group) {
g.DELETE("/user/:id", func(c echo.Context) error { g.DELETE("/user/:id", func(c echo.Context) error {
ctx := c.Request().Context() ctx := c.Request().Context()
currentUserID, ok := c.Get(UserIDContextKey).(int32) currentUserID, ok := c.Get(userIDContextKey).(int32)
if !ok { if !ok {
return echo.NewHTTPError(http.StatusUnauthorized, "missing user in session") return echo.NewHTTPError(http.StatusUnauthorized, "missing user in session")
} }

View File

@ -23,7 +23,7 @@ type ContextKey int
const ( const (
// The key name used to store user id in the context // The key name used to store user id in the context
// user id is extracted from the jwt token subject field. // user id is extracted from the jwt token subject field.
UserIDContextKey ContextKey = iota userIDContextKey ContextKey = iota
) )
// GRPCAuthInterceptor is the auth interceptor for gRPC server. // GRPCAuthInterceptor is the auth interceptor for gRPC server.
@ -80,7 +80,7 @@ func (in *GRPCAuthInterceptor) AuthenticationInterceptor(ctx context.Context, re
} }
// Stores userID into context. // Stores userID into context.
childCtx := context.WithValue(ctx, UserIDContextKey, userID) childCtx := context.WithValue(ctx, userIDContextKey, userID)
return handler(childCtx, request) return handler(childCtx, request)
} }

View File

@ -28,7 +28,7 @@ func NewShortcutService(secret string, store *store.Store) *ShortcutService {
} }
func (s *ShortcutService) ListShortcuts(ctx context.Context, _ *apiv2pb.ListShortcutsRequest) (*apiv2pb.ListShortcutsResponse, error) { func (s *ShortcutService) ListShortcuts(ctx context.Context, _ *apiv2pb.ListShortcutsRequest) (*apiv2pb.ListShortcutsResponse, error) {
userID := ctx.Value(UserIDContextKey).(int32) userID := ctx.Value(userIDContextKey).(int32)
find := &store.FindShortcut{} find := &store.FindShortcut{}
find.VisibilityList = []store.Visibility{store.VisibilityWorkspace, store.VisibilityPublic} find.VisibilityList = []store.Visibility{store.VisibilityWorkspace, store.VisibilityPublic}
visibleShortcutList, err := s.Store.ListShortcuts(ctx, find) visibleShortcutList, err := s.Store.ListShortcuts(ctx, find)
@ -66,7 +66,7 @@ func (s *ShortcutService) GetShortcut(ctx context.Context, request *apiv2pb.GetS
return nil, status.Errorf(codes.NotFound, "shortcut not found") return nil, status.Errorf(codes.NotFound, "shortcut not found")
} }
userID := ctx.Value(UserIDContextKey).(int32) userID := ctx.Value(userIDContextKey).(int32)
if shortcut.Visibility == storepb.Visibility_PRIVATE && shortcut.CreatorId != userID { if shortcut.Visibility == storepb.Visibility_PRIVATE && shortcut.CreatorId != userID {
return nil, status.Errorf(codes.PermissionDenied, "Permission denied") return nil, status.Errorf(codes.PermissionDenied, "Permission denied")
} }
@ -78,7 +78,7 @@ func (s *ShortcutService) GetShortcut(ctx context.Context, request *apiv2pb.GetS
} }
func (s *ShortcutService) CreateShortcut(ctx context.Context, request *apiv2pb.CreateShortcutRequest) (*apiv2pb.CreateShortcutResponse, error) { func (s *ShortcutService) CreateShortcut(ctx context.Context, request *apiv2pb.CreateShortcutRequest) (*apiv2pb.CreateShortcutResponse, error) {
userID := ctx.Value(UserIDContextKey).(int32) userID := ctx.Value(userIDContextKey).(int32)
shortcut := &storepb.Shortcut{ shortcut := &storepb.Shortcut{
CreatorId: userID, CreatorId: userID,
Name: request.Shortcut.Name, Name: request.Shortcut.Name,
@ -111,7 +111,7 @@ func (s *ShortcutService) CreateShortcut(ctx context.Context, request *apiv2pb.C
} }
func (s *ShortcutService) DeleteShortcut(ctx context.Context, request *apiv2pb.DeleteShortcutRequest) (*apiv2pb.DeleteShortcutResponse, error) { func (s *ShortcutService) DeleteShortcut(ctx context.Context, request *apiv2pb.DeleteShortcutRequest) (*apiv2pb.DeleteShortcutResponse, error) {
userID := ctx.Value(UserIDContextKey).(int32) userID := ctx.Value(userIDContextKey).(int32)
currentUser, err := s.Store.GetUser(ctx, &store.FindUser{ currentUser, err := s.Store.GetUser(ctx, &store.FindUser{
ID: &userID, ID: &userID,
}) })

View File

@ -87,7 +87,7 @@ func (s *UserService) CreateUser(ctx context.Context, request *apiv2pb.CreateUse
} }
func (s *UserService) UpdateUser(ctx context.Context, request *apiv2pb.UpdateUserRequest) (*apiv2pb.UpdateUserResponse, error) { func (s *UserService) UpdateUser(ctx context.Context, request *apiv2pb.UpdateUserRequest) (*apiv2pb.UpdateUserResponse, error) {
userID := ctx.Value(UserIDContextKey).(int32) userID := ctx.Value(userIDContextKey).(int32)
if userID != request.User.Id { if userID != request.User.Id {
return nil, status.Errorf(codes.PermissionDenied, "Permission denied") return nil, status.Errorf(codes.PermissionDenied, "Permission denied")
} }
@ -115,7 +115,7 @@ func (s *UserService) UpdateUser(ctx context.Context, request *apiv2pb.UpdateUse
} }
func (s *UserService) DeleteUser(ctx context.Context, request *apiv2pb.DeleteUserRequest) (*apiv2pb.DeleteUserResponse, error) { func (s *UserService) DeleteUser(ctx context.Context, request *apiv2pb.DeleteUserRequest) (*apiv2pb.DeleteUserResponse, error) {
userID := ctx.Value(UserIDContextKey).(int32) userID := ctx.Value(userIDContextKey).(int32)
if userID == request.Id { if userID == request.Id {
return nil, status.Errorf(codes.InvalidArgument, "cannot delete yourself") return nil, status.Errorf(codes.InvalidArgument, "cannot delete yourself")
} }
@ -131,7 +131,7 @@ func (s *UserService) DeleteUser(ctx context.Context, request *apiv2pb.DeleteUse
} }
func (s *UserService) ListUserAccessTokens(ctx context.Context, request *apiv2pb.ListUserAccessTokensRequest) (*apiv2pb.ListUserAccessTokensResponse, error) { func (s *UserService) ListUserAccessTokens(ctx context.Context, request *apiv2pb.ListUserAccessTokensRequest) (*apiv2pb.ListUserAccessTokensResponse, error) {
userID := ctx.Value(UserIDContextKey).(int32) userID := ctx.Value(userIDContextKey).(int32)
if userID != request.Id { if userID != request.Id {
return nil, status.Errorf(codes.PermissionDenied, "Permission denied") return nil, status.Errorf(codes.PermissionDenied, "Permission denied")
} }
@ -182,7 +182,7 @@ func (s *UserService) ListUserAccessTokens(ctx context.Context, request *apiv2pb
} }
func (s *UserService) CreateUserAccessToken(ctx context.Context, request *apiv2pb.CreateUserAccessTokenRequest) (*apiv2pb.CreateUserAccessTokenResponse, error) { func (s *UserService) CreateUserAccessToken(ctx context.Context, request *apiv2pb.CreateUserAccessTokenRequest) (*apiv2pb.CreateUserAccessTokenResponse, error) {
userID := ctx.Value(UserIDContextKey).(int32) userID := ctx.Value(userIDContextKey).(int32)
if userID != request.Id { if userID != request.Id {
return nil, status.Errorf(codes.PermissionDenied, "Permission denied") return nil, status.Errorf(codes.PermissionDenied, "Permission denied")
} }
@ -238,7 +238,7 @@ func (s *UserService) CreateUserAccessToken(ctx context.Context, request *apiv2p
} }
func (s *UserService) DeleteUserAccessToken(ctx context.Context, request *apiv2pb.DeleteUserAccessTokenRequest) (*apiv2pb.DeleteUserAccessTokenResponse, error) { func (s *UserService) DeleteUserAccessToken(ctx context.Context, request *apiv2pb.DeleteUserAccessTokenRequest) (*apiv2pb.DeleteUserAccessTokenResponse, error) {
userID := ctx.Value(UserIDContextKey).(int32) userID := ctx.Value(userIDContextKey).(int32)
if userID != request.Id { if userID != request.Id {
return nil, status.Errorf(codes.PermissionDenied, "Permission denied") return nil, status.Errorf(codes.PermissionDenied, "Permission denied")
} }

View File

@ -39,7 +39,7 @@ func (s *UserSettingService) UpdateUserSetting(ctx context.Context, request *api
return nil, status.Errorf(codes.InvalidArgument, "update mask is empty") return nil, status.Errorf(codes.InvalidArgument, "update mask is empty")
} }
userID := ctx.Value(UserIDContextKey).(int32) userID := ctx.Value(userIDContextKey).(int32)
for _, path := range request.UpdateMask { for _, path := range request.UpdateMask {
if path == "locale" { if path == "locale" {
if _, err := s.Store.UpsertUserSetting(ctx, &storepb.UserSetting{ if _, err := s.Store.UpsertUserSetting(ctx, &storepb.UserSetting{