Merge branch 'dev'
This commit is contained in:
commit
cafc9b6e22
|
@ -0,0 +1,9 @@
|
|||
<html>
|
||||
<head>
|
||||
<title>This file will be replaced by the frontend build process</title>
|
||||
</head>
|
||||
<body>
|
||||
<h5>This file will be replaced by the frontend build process</h5>
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -23,15 +23,15 @@ func NewHandler(config *config.Config) *Handler {
|
|||
}
|
||||
|
||||
func Routes(router *gin.Engine, h *Handler) {
|
||||
if h.ServeFrontend {
|
||||
router.Use(staticMiddleware("dist"))
|
||||
router.Static("/assets", "dist/assets")
|
||||
// this whole logic is walkaround for serving frontend files
|
||||
// TODO: figure out better way to improve it. main issue i run into is failing over to index.html when file does not exist
|
||||
|
||||
if h.ServeFrontend {
|
||||
// if file exists in dist folder, serve it
|
||||
router.Use(staticMiddleware("dist"))
|
||||
// if file does not exist in dist folder fallback to index.html
|
||||
router.NoRoute(staticMiddlewareNoRoute("dist"))
|
||||
|
||||
// Gzip compression middleware
|
||||
router.Group("/assets").Use(func(c *gin.Context) {
|
||||
c.Header("Cache-Control", "max-age=31536000, immutable")
|
||||
c.Next()
|
||||
})
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -40,7 +40,24 @@ func staticMiddleware(root string) gin.HandlerFunc {
|
|||
fileServer := http.FileServer(getFileSystem(root))
|
||||
|
||||
return func(c *gin.Context) {
|
||||
_, err := fs.Stat(embeddedFiles, "dist"+c.Request.URL.Path)
|
||||
if err != nil {
|
||||
c.Next()
|
||||
return
|
||||
}
|
||||
fileServer.ServeHTTP(c.Writer, c.Request)
|
||||
|
||||
}
|
||||
}
|
||||
func staticMiddlewareNoRoute(root string) gin.HandlerFunc {
|
||||
fileServer := http.FileServer(getFileSystem(root))
|
||||
|
||||
// always serve index.html for any route does not match:
|
||||
return func(c *gin.Context) {
|
||||
// Rewrite all requests to serve index.html
|
||||
c.Request.URL.Path = "/"
|
||||
fileServer.ServeHTTP(c.Writer, c.Request)
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue