Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Getenv ¶
Getenv gets the given environment variable. This is a more advanced version of the built-in os.Getenv function.
If key is not found, Getenv sets it to a fallback value.
Example:
import (
gowebly "github.com/gowebly/helpers"
)
// Get a value of the environment variable 'BACKEND_PORT' or sets it to a fallback value '5000'.
gowebly.Getenv("BACKEND_PORT", "5000")
func ParseTemplates ¶
ParseTemplates parses list of the given templates to the HTTP handler.
Already included 'templates/main.html' layout template from your project path.
Example:
import (
"log/slog"
gowebly "github.com/gowebly/helpers"
)
func handler(w http.ResponseWriter, r *http.Request) {
// Define paths to the user templates.
indexPage := filepath.Join("templates", "pages", "index.html")
indexLoginForm := filepath.Join("templates", "components", "index-login-form.html")
// Parse user templates or return error.
tmpl, err := gowebly.ParseTemplates(indexPage, indexLoginForm)
if err != nil {
w.WriteHeader(http.StatusBadRequest)
slog.Error(err.Error(), "method", r.Method, "status", http.StatusBadRequest, "path", r.URL.Path)
return
}
// Execute (render) all templates or return error.
if err := tmpl.Execute(w, nil); err != nil {
w.WriteHeader(http.StatusInternalServerError)
slog.Error(err.Error(), "method", r.Method, "status", http.StatusInternalServerError, "path", r.URL.Path)
return
}
}
func StaticFileServerHandler ¶
func StaticFileServerHandler(fs http.FileSystem) http.Handler
StaticFileServerHandler handles a custom handler for serve embed static folder.
Example:
import (
"embed"
"net/http"
gowebly "github.com/gowebly/helpers"
)
//go:embed static/*
var static embed.FS
// Handle static files (with a custom handler).
http.Handle("/static/", gowebly.StaticFileServerHandler(http.FS(static)))
Types ¶
This section is empty.
Click to show internal directories.
Click to hide internal directories.