embedding index html
This commit is contained in:
parent
4eae59bd66
commit
228fed989e
@ -1,19 +0,0 @@
|
|||||||
package rendering
|
|
||||||
|
|
||||||
import (
|
|
||||||
"html/template"
|
|
||||||
"log"
|
|
||||||
"os"
|
|
||||||
)
|
|
||||||
|
|
||||||
func getFileContent() string {
|
|
||||||
content, err := os.ReadFile("frontend/index.html")
|
|
||||||
|
|
||||||
if err != nil {
|
|
||||||
log.Fatal(err)
|
|
||||||
}
|
|
||||||
|
|
||||||
return string(content)
|
|
||||||
}
|
|
||||||
|
|
||||||
var IndexTemplate = template.Must(template.New("index").Parse(getFileContent()))
|
|
24
main.go
24
main.go
@ -4,7 +4,9 @@ import (
|
|||||||
"bytes"
|
"bytes"
|
||||||
"embed"
|
"embed"
|
||||||
"fmt"
|
"fmt"
|
||||||
|
"html/template"
|
||||||
"io/fs"
|
"io/fs"
|
||||||
|
"log"
|
||||||
"net/http"
|
"net/http"
|
||||||
"os"
|
"os"
|
||||||
"strconv"
|
"strconv"
|
||||||
@ -27,16 +29,28 @@ func FetchDiyHrt() error {
|
|||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//go:embed frontend/*
|
||||||
|
var frontendFiles embed.FS
|
||||||
|
|
||||||
|
func getFileContent() string {
|
||||||
|
content, err := frontendFiles.ReadFile("frontend/index.html")
|
||||||
|
|
||||||
|
if err != nil {
|
||||||
|
log.Fatal(err)
|
||||||
|
}
|
||||||
|
|
||||||
|
return string(content)
|
||||||
|
}
|
||||||
|
|
||||||
|
var IndexTemplate = template.Must(template.New("index").Parse(getFileContent()))
|
||||||
|
|
||||||
func getIndex(c echo.Context) error {
|
func getIndex(c echo.Context) error {
|
||||||
var tpl bytes.Buffer
|
var tpl bytes.Buffer
|
||||||
rendering.IndexTemplate.Execute(&tpl, CurrentConfig.Template)
|
IndexTemplate.Execute(&tpl, CurrentConfig.Template)
|
||||||
|
|
||||||
return c.HTML(http.StatusOK, tpl.String())
|
return c.HTML(http.StatusOK, tpl.String())
|
||||||
}
|
}
|
||||||
|
|
||||||
//go:embed frontend/*
|
|
||||||
var frontendFiles embed.FS
|
|
||||||
|
|
||||||
func getFileSystem() http.FileSystem {
|
func getFileSystem() http.FileSystem {
|
||||||
fsys, err := fs.Sub(frontendFiles, "frontend")
|
fsys, err := fs.Sub(frontendFiles, "frontend")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -66,8 +80,8 @@ func main() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
e := echo.New()
|
e := echo.New()
|
||||||
// "frontend/assets"
|
|
||||||
|
|
||||||
|
// https://echo.labstack.com/docs/cookbook/embed-resources
|
||||||
staticHandler := http.FileServer(getFileSystem())
|
staticHandler := http.FileServer(getFileSystem())
|
||||||
e.GET("/assets/*", echo.WrapHandler(http.StripPrefix("/", staticHandler)))
|
e.GET("/assets/*", echo.WrapHandler(http.StripPrefix("/", staticHandler)))
|
||||||
e.GET("/scripts/*", echo.WrapHandler(http.StripPrefix("/", staticHandler)))
|
e.GET("/scripts/*", echo.WrapHandler(http.StripPrefix("/", staticHandler)))
|
||||||
|
Loading…
x
Reference in New Issue
Block a user