mirror of
https://github.com/nabbar/golib.git
synced 2025-12-24 11:51:02 +08:00
- removing package cluster & nutsdb (+ test) in waiting stabilisation of dependencies - adding olld source code in tarball file Dependencies golang/x/exp: - removing experiment dependency when using slices to root/slices package Bump dependencies (some dependences still use exp who's need go1.22)
Package Static
This package help to manage static file router in an API to embedded files into the go binary api.
This package requires packr tools, golib/router & go Gin Tonic API Framework.
Example of implementation
We will work on an example of file/folder tree like this :
/
bin/
api/
config/
routers/
static/
get.go
static/
static/
...some_static_files...
in the get.go file, we will implement the static package call :
package static
import (
"github.com/gin-gonic/gin"
"github.com/gobuffalo/packr"
"github.com/nabbar/golib/static"
"myapp/release"
"myapp/bin/api/config"
"myapp/bin/api/routers"
)
const UrlPrefix = "/static"
func init() {
staticStcFile := static.NewStatic(false, UrlPrefix, packr.NewBox("../../../../static/static"), GetHeader)
staticStcFile.SetDownloadAll()
staticStcFile.Register(routers.RouterList.Register)
}
func GetHeader(c *gin.Context) {
// any function to return global & generic header (like CSP, HSTS, ...)
}