server

package
v1.1.9 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 25, 2024 License: Unlicense Imports: 20 Imported by: 3

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ADMIN_HTML_FILE fs.File
View Source
var ADMIN_HTML_FILE_SIZE int
View Source
var CDNFiles embed.FS
View Source
var CDNFilesFS fs.FS
View Source
var CDNLimter = rate_limiter.New(rate_limiter.Config{
	Max:        6,
	Expiration: 1 * time.Second,
	KeyGenerator: func(c *fiber.Ctx) string {
		return c.Get("x-forwarded-for")
	},
	LimitReached:      CDNMaxedOut,
	LimiterMiddleware: rate_limiter.SlidingWindow{},
})
View Source
var HOME_HTML_FILE fs.File
View Source
var HOME_HTML_FILE_SIZE int
View Source
var HTMLFiles embed.FS
View Source
var HTMLFilesFS fs.FS
View Source
var LOGIN_HTML_FILE fs.File
View Source
var LOGIN_HTML_FILE_SIZE int
View Source
var PublicLimter = rate_limiter.New(rate_limiter.Config{
	Max:        3,
	Expiration: 1 * time.Second,
	KeyGenerator: func(c *fiber.Ctx) string {
		return c.Get("x-forwarded-for")
	},
	LimitReached:      PublicMaxedOut,
	LimiterMiddleware: rate_limiter.SlidingWindow{},
})

Functions

func CDNMaxedOut

func CDNMaxedOut(c *fiber.Ctx) error

func PublicMaxedOut

func PublicMaxedOut(c *fiber.Ctx) error

Types

type Server

type Server struct {
	FiberApp *fiber.App      `yaml:"fiber_app"`
	Config   *types.Config   `yaml:"config"`
	Location *time.Location  `yaml:"-"`
	DB       *bolt.DB        `yaml:"-"`
	LOG      *logger.Wrapper `yaml:"-"`
}

func New

func New(config *types.Config, w_log *logger.Wrapper, db *bolt.DB) (server Server)

func (*Server) AdminLogin

func (s *Server) AdminLogin(context *fiber.Ctx) error

POST http://localhost:5950/admin/login

func (*Server) AdminLogout

func (s *Server) AdminLogout(context *fiber.Ctx) error

func (*Server) Get

func (s *Server) Get(bucket_name string, key string) (result string)

func (*Server) GetLogMessages

func (s *Server) GetLogMessages(c *fiber.Ctx) error

func (*Server) GetOBJ

func (s *Server) GetOBJ(bucket_name string, key string) (result interface{})

func (*Server) LogRequest

func (s *Server) LogRequest(context *fiber.Ctx) error

func (*Server) LoginPage

func (s *Server) LoginPage(context *fiber.Ctx) error

func (*Server) RenderFailedLogin

func (s *Server) RenderFailedLogin(context *fiber.Ctx) error

func (*Server) RenderHomePage

func (s *Server) RenderHomePage(context *fiber.Ctx) error

func (*Server) Set

func (s *Server) Set(bucket_name string, key string, value string)

func (*Server) SetOBJ

func (s *Server) SetOBJ(bucket_name string, key string, obj interface{})

func (*Server) SetupAdminRoutes

func (s *Server) SetupAdminRoutes()

func (*Server) SetupPublicRoutes

func (s *Server) SetupPublicRoutes()

func (*Server) Start

func (s *Server) Start()

func (*Server) StaticHandler

func (s *Server) StaticHandler(prefix string, fsys fs.FS) fiber.Handler

Custom static file handler for embedded files

func (*Server) ValidateAdmin

func (s *Server) ValidateAdmin(context *fiber.Ctx) (result bool)

func (*Server) ValidateAdminLoginCredentials

func (s *Server) ValidateAdminLoginCredentials(context *fiber.Ctx) (result bool)

func (*Server) ValidateAdminMW

func (s *Server) ValidateAdminMW(context *fiber.Ctx) error

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL