middleware

package
v0.10.0 Latest Latest
Warning

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

Go to latest
Published: Nov 16, 2023 License: MIT Imports: 11 Imported by: 0

Documentation

Index

Constants

View Source
const CachedPageGroup = "page"

CachedPageGroup stores the cache group for cached pages

Variables

This section is empty.

Functions

func CacheControl

func CacheControl(maxAge time.Duration) echo.MiddlewareFunc

CacheControl sets a Cache-Control header with a given max age

func LoadAuthenticatedUser

func LoadAuthenticatedUser(authClient *services.AuthClient) echo.MiddlewareFunc

LoadAuthenticatedUser loads the authenticated user, if one, and stores in context

func LoadUser

func LoadUser(orm *ent.Client) echo.MiddlewareFunc

LoadUser loads the user based on the ID provided as a path parameter

func LoadValidPasswordToken

func LoadValidPasswordToken(authClient *services.AuthClient) echo.MiddlewareFunc

LoadValidPasswordToken loads a valid password token entity that matches the user and token provided in path parameters If the token is invalid, the user will be redirected to the forgot password route This requires that the user owning the token is loaded in to context

func LogRequestID

func LogRequestID() echo.MiddlewareFunc

LogRequestID includes the request ID in all logs for the given request This requires that middleware that includes the request ID first execute

func RequireAuthentication

func RequireAuthentication() echo.MiddlewareFunc

RequireAuthentication requires that the user be authenticated in order to proceed

func RequireNoAuthentication

func RequireNoAuthentication() echo.MiddlewareFunc

RequireNoAuthentication requires that the user not be authenticated in order to proceed

func ServeCachedPage

func ServeCachedPage(ch *services.CacheClient) echo.MiddlewareFunc

ServeCachedPage attempts to load a page from the cache by matching on the complete request URL If a page is cached for the requested URL, it will be served here and the request terminated. Any request made by an authenticated user or that is not a GET will be skipped.

Types

type CachedPage

type CachedPage struct {
	// URL stores the URL of the requested page
	URL string

	// HTML stores the complete HTML of the rendered Page
	HTML []byte

	// StatusCode stores the HTTP status code
	StatusCode int

	// Headers stores the HTTP headers
	Headers map[string]string
}

CachedPage is what is used to store a rendered Page in the cache

Jump to

Keyboard shortcuts

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