mirror of
				https://github.com/usememos/memos.git
				synced 2025-06-05 22:09:59 +02:00 
			
		
		
		
	fix: skip api error for static middleware (#941)
This commit is contained in:
		| @@ -22,6 +22,11 @@ func DefaultGetRequestSkipper(c echo.Context) bool { | ||||
| 	return c.Request().Method == http.MethodGet | ||||
| } | ||||
|  | ||||
| func DefaultAPIRequestSkipper(c echo.Context) bool { | ||||
| 	path := c.Path() | ||||
| 	return common.HasPrefixes(path, "/api") | ||||
| } | ||||
|  | ||||
| func (server *Server) DefaultAuthSkipper(c echo.Context) bool { | ||||
| 	ctx := c.Request().Context() | ||||
| 	path := c.Path() | ||||
|   | ||||
| @@ -25,18 +25,19 @@ func embedFrontend(e *echo.Echo) { | ||||
| 	// Use echo static middleware to serve the built dist folder | ||||
| 	// refer: https://github.com/labstack/echo/blob/master/middleware/static.go | ||||
| 	e.Use(middleware.StaticWithConfig(middleware.StaticConfig{ | ||||
| 		Skipper:    DefaultAPIRequestSkipper, | ||||
| 		HTML5:      true, | ||||
| 		Filesystem: getFileSystem("dist"), | ||||
| 	})) | ||||
|  | ||||
| 	g := e.Group("assets") | ||||
| 	g.Use(func(next echo.HandlerFunc) echo.HandlerFunc { | ||||
| 	assetsGroup := e.Group("assets") | ||||
| 	assetsGroup.Use(func(next echo.HandlerFunc) echo.HandlerFunc { | ||||
| 		return func(c echo.Context) error { | ||||
| 			c.Response().Header().Set(echo.HeaderCacheControl, "max-age=31536000, immutable") | ||||
| 			return next(c) | ||||
| 		} | ||||
| 	}) | ||||
| 	g.Use(middleware.StaticWithConfig(middleware.StaticConfig{ | ||||
| 	assetsGroup.Use(middleware.StaticWithConfig(middleware.StaticConfig{ | ||||
| 		HTML5:      true, | ||||
| 		Filesystem: getFileSystem("dist/assets"), | ||||
| 	})) | ||||
|   | ||||
| @@ -56,9 +56,7 @@ func NewServer(ctx context.Context, profile *profile.Profile) (*Server, error) { | ||||
| 	e.Use(middleware.Gzip()) | ||||
|  | ||||
| 	e.Use(middleware.CSRFWithConfig(middleware.CSRFConfig{ | ||||
| 		Skipper: func(c echo.Context) bool { | ||||
| 			return s.DefaultAuthSkipper(c) | ||||
| 		}, | ||||
| 		Skipper:     s.DefaultAuthSkipper, | ||||
| 		TokenLookup: "cookie:_csrf", | ||||
| 	})) | ||||
|  | ||||
| @@ -73,7 +71,6 @@ func NewServer(ctx context.Context, profile *profile.Profile) (*Server, error) { | ||||
| 	})) | ||||
|  | ||||
| 	e.Use(middleware.TimeoutWithConfig(middleware.TimeoutConfig{ | ||||
| 		Skipper:      middleware.DefaultSkipper, | ||||
| 		ErrorMessage: "Request timeout", | ||||
| 		Timeout:      30 * time.Second, | ||||
| 	})) | ||||
|   | ||||
		Reference in New Issue
	
	Block a user