Documentation ¶
Index ¶
- Constants
- func StatusText(code int) string
- type Context
- type ContextRequest
- type ContextResponse
- type Cookie
- type FormRequest
- type HandlerFunc
- type Json
- type Limit
- type Middleware
- type RateLimiter
- type ResourceController
- type Response
- type ResponseOrigin
- type ResponseStatus
- type ResponseView
- type View
Constants ¶
View Source
const ( MethodGet = http.MethodGet MethodHead = http.MethodHead MethodPost = http.MethodPost MethodPut = http.MethodPut MethodPatch = http.MethodPatch MethodDelete = http.MethodDelete MethodConnect = http.MethodConnect MethodOptions = http.MethodOptions MethodTrace = http.MethodTrace )
View Source
const ( StatusContinue = http.StatusContinue StatusSwitchingProtocols = http.StatusSwitchingProtocols StatusProcessing = http.StatusProcessing StatusEarlyHints = http.StatusEarlyHints StatusOK = http.StatusOK StatusCreated = http.StatusCreated StatusAccepted = http.StatusAccepted StatusNonAuthoritativeInfo = http.StatusNonAuthoritativeInfo StatusNoContent = http.StatusNoContent StatusResetContent = http.StatusResetContent StatusPartialContent = http.StatusPartialContent StatusMultiStatus = http.StatusMultiStatus StatusAlreadyReported = http.StatusAlreadyReported StatusIMUsed = http.StatusIMUsed StatusMultipleChoices = http.StatusMultipleChoices StatusMovedPermanently = http.StatusMovedPermanently StatusFound = http.StatusFound StatusSeeOther = http.StatusSeeOther StatusNotModified = http.StatusNotModified StatusUseProxy = http.StatusUseProxy StatusTemporaryRedirect = http.StatusTemporaryRedirect StatusPermanentRedirect = http.StatusPermanentRedirect StatusBadRequest = http.StatusBadRequest StatusPaymentRequired = http.StatusPaymentRequired StatusForbidden = http.StatusForbidden StatusNotFound = http.StatusNotFound StatusMethodNotAllowed = http.StatusMethodNotAllowed StatusNotAcceptable = http.StatusNotAcceptable StatusProxyAuthRequired = http.StatusProxyAuthRequired StatusRequestTimeout = http.StatusRequestTimeout StatusConflict = http.StatusConflict StatusGone = http.StatusGone StatusLengthRequired = http.StatusLengthRequired StatusPreconditionFailed = http.StatusPreconditionFailed StatusRequestEntityTooLarge = http.StatusRequestEntityTooLarge StatusRequestURITooLong = http.StatusRequestURITooLong StatusUnsupportedMediaType = http.StatusUnsupportedMediaType StatusRequestedRangeNotSatisfiable = http.StatusRequestedRangeNotSatisfiable StatusExpectationFailed = http.StatusExpectationFailed StatusTeapot = http.StatusTeapot StatusMisdirectedRequest = http.StatusMisdirectedRequest StatusUnprocessableEntity = http.StatusUnprocessableEntity StatusLocked = http.StatusLocked StatusFailedDependency = http.StatusFailedDependency StatusTooEarly = http.StatusTooEarly StatusUpgradeRequired = http.StatusUpgradeRequired StatusPreconditionRequired = http.StatusPreconditionRequired StatusTooManyRequests = http.StatusTooManyRequests StatusRequestHeaderFieldsTooLarge = http.StatusRequestHeaderFieldsTooLarge StatusInternalServerError = http.StatusInternalServerError StatusNotImplemented = http.StatusNotImplemented StatusBadGateway = http.StatusBadGateway StatusGatewayTimeout = http.StatusGatewayTimeout StatusHTTPVersionNotSupported = http.StatusHTTPVersionNotSupported StatusVariantAlsoNegotiates = http.StatusVariantAlsoNegotiates StatusInsufficientStorage = http.StatusInsufficientStorage StatusLoopDetected = http.StatusLoopDetected StatusNotExtended = http.StatusNotExtended StatusNetworkAuthenticationRequired = http.StatusNetworkAuthenticationRequired )
Variables ¶
This section is empty.
Functions ¶
func StatusText ¶ added in v1.10.0
StatusText returns a text for the HTTP status code. It returns the empty string if the code is unknown.
Types ¶
type Context ¶ added in v1.0.1
type Context interface { context.Context // Context returns the Context Context() context.Context // WithValue add value associated with key in context WithValue(key string, value any) // Request returns the ContextRequest Request() ContextRequest // Response returns the ContextResponse Response() ContextResponse }
type ContextRequest ¶ added in v1.13.1
type ContextRequest interface { // Cookie retrieves the value of the specified cookie by its key. Cookie(key string, defaultValue ...string) string // Header retrieves the value of the specified HTTP header by its key. // If the header is not found, it returns the optional default value (if provided). Header(key string, defaultValue ...string) string // Headers return all the HTTP headers of the request. Headers() http.Header // Method retrieves the HTTP request method (e.g., GET, POST, PUT). Method() string // Path retrieves the current path information for the request. Path() string // Url retrieves the URL (excluding the query string) for the request. Url() string // FullUrl retrieves the full URL, including the query string, for the request. FullUrl() string // Ip retrieves the client's IP address. Ip() string // Host retrieves the host name. Host() string // All retrieves data from JSON, form, and query parameters. All() map[string]any // Bind retrieve json and bind to obj Bind(obj any) error // Route retrieves a route parameter from the request path (e.g., /users/{id}). Route(key string) string // RouteInt retrieves a route parameter from the request path and attempts to parse it as an integer. RouteInt(key string) int // RouteInt64 retrieves a route parameter from the request path and attempts to parse it as a 64-bit integer. RouteInt64(key string) int64 // Query retrieves a query string parameter from the request (e.g., /users?id=1). Query(key string, defaultValue ...string) string // QueryInt retrieves a query string parameter from the request and attempts to parse it as an integer. QueryInt(key string, defaultValue ...int) int // QueryInt64 retrieves a query string parameter from the request and attempts to parse it as a 64-bit integer. QueryInt64(key string, defaultValue ...int64) int64 // QueryBool retrieves a query string parameter from the request and attempts to parse it as a boolean. QueryBool(key string, defaultValue ...bool) bool // QueryArray retrieves a query string parameter from the request and returns it as a slice of strings. QueryArray(key string) []string // QueryMap retrieves a query string parameter from the request and returns it as a map of key-value pairs. QueryMap(key string) map[string]string // Queries returns all the query string parameters from the request as a map of key-value pairs. Queries() map[string]string // HasSession checks if the request has a session. HasSession() bool // Session retrieves the session associated with the request. Session() session.Session // SetSession sets the session associated with the request. SetSession(session session.Session) ContextRequest // Input retrieves data from the request in the following order: JSON, form, query, and route parameters. Input(key string, defaultValue ...string) string InputArray(key string, defaultValue ...[]string) []string InputMap(key string, defaultValue ...map[string]string) map[string]string InputInt(key string, defaultValue ...int) int InputInt64(key string, defaultValue ...int64) int64 InputBool(key string, defaultValue ...bool) bool // File retrieves a file by its key from the request. File(name string) (filesystem.File, error) // AbortWithStatus aborts the request with the specified HTTP status code. AbortWithStatus(code int) // AbortWithStatusJson aborts the request with the specified HTTP status code // and returns a JSON response object. AbortWithStatusJson(code int, jsonObj any) // Next skips the current request handler, allowing the next middleware or handler to be executed. Next() // Origin retrieves the underlying *http.Request object for advanced request handling. Origin() *http.Request // Validate performs request data validation using specified rules and options. Validate(rules map[string]string, options ...validation.Option) (validation.Validator, error) // ValidateRequest validates the request data against a pre-defined FormRequest structure // and returns validation errors, if any. ValidateRequest(request FormRequest) (validation.Errors, error) }
type ContextResponse ¶ added in v1.13.1
type ContextResponse interface { // Cookie adds a cookie to the response. Cookie(cookie Cookie) ContextResponse // Data write the given data to the response. Data(code int, contentType string, data []byte) Response // Download initiates a file download by specifying the file path and the desired filename Download(filepath, filename string) Response // File serves a file located at the specified file path as the response. File(filepath string) Response // Header sets an HTTP header field with the given key and value. Header(key, value string) ContextResponse // Json sends a JSON response with the specified status code and data object. Json(code int, obj any) Response // NoContent sends a response with no-body and the specified status code. NoContent(code ...int) Response // Origin returns the ResponseOrigin Origin() ResponseOrigin // Redirect performs an HTTP redirect to the specified location with the given status code. Redirect(code int, location string) Response // String writes a string response with the specified status code and format. // The 'values' parameter can be used to replace placeholders in the format string. String(code int, format string, values ...any) Response // Success returns ResponseStatus with a 200 status code. Success() ResponseStatus // Status sets the HTTP response status code and returns the ResponseStatus. Status(code int) ResponseStatus // View returns ResponseView View() ResponseView // Writer returns the underlying http.ResponseWriter associated with the response. Writer() http.ResponseWriter // WithoutCookie removes a cookie from the response. WithoutCookie(name string) ContextResponse // Flush flushes any buffered data to the client. Flush() }
type Cookie ¶ added in v1.14.0
type Cookie struct { // Name is the name of the cookie. Name string // Value is the value associated with the cookie's name. Value string // Path specifies the subset of URLs to which this cookie applies. Path string // Domain specifies the domain for which the cookie is valid. Domain string // Expires specifies the maximum age of the cookie.It is considered // expired if the current time is after the Expires value. Expires time.Time // MaxAge specifies the maximum age of the cookie in seconds.A zero or // negative MaxAge means that the cookie is not persistent and will be // deleted when the browser is closed. MaxAge int // Secure indicates whether the cookie should only be sent over secure // (HTTPS) connections. Secure bool // HttpOnly indicates whether the cookie is accessible only through // HTTP requests, and not through JavaScript. HttpOnly bool // Raw is the unparsed value of the "Set-Cookie" header received from // the server. Raw string // SameSite allows a server to define a cookie attribute, making it // impossible for the browser to send this cookie along with cross-site // requests.It helps mitigate the risk of cross-origin information leaks. SameSite string }
Cookie represents an HTTP cookie as defined by RFC 6265.
type FormRequest ¶
type FormRequest interface { // Authorize determine if the user is authorized to make this request. Authorize(ctx Context) error // Rules get the validation rules that apply to the request. Rules(ctx Context) map[string]string // Messages get the validation messages that apply to the request. Messages(ctx Context) map[string]string // Attributes get custom attributes for validator errors. Attributes(ctx Context) map[string]string // PrepareForValidation prepare the data for validation. PrepareForValidation(ctx Context, data validation.Data) error }
type HandlerFunc ¶ added in v1.0.0
type Middleware ¶ added in v1.0.0
type Middleware func(Context)
type RateLimiter ¶ added in v1.10.0
type RateLimiter interface { // For register a new rate limiter. For(name string, callback func(ctx Context) Limit) // ForWithLimits register a new rate limiter with limits. ForWithLimits(name string, callback func(ctx Context) []Limit) // Limiter get a rate limiter instance by name. Limiter(name string) func(ctx Context) []Limit }
type ResourceController ¶ added in v1.11.1
type ResourceController interface { // Index method for controller Index(Context) Response // Show method for controller Show(Context) Response // Store method for controller Store(Context) Response // Update method for controller Update(Context) Response // Destroy method for controller Destroy(Context) Response }
type ResponseOrigin ¶ added in v1.8.0
type ResponseOrigin interface { // Body returns the response's body content as a *bytes.Buffer. Body() *bytes.Buffer // Header returns the response's HTTP header. Header() http.Header // Size returns the size, in bytes, of the response's body content. Size() int // Status returns the HTTP status code of the response. Status() int }
type ResponseStatus ¶ added in v1.12.5
type ResponseStatus interface { // Data write the given data to the Response. Data(contentType string, data []byte) Response // Json sends a JSON Response with the specified data object. Json(obj any) Response // String writes a string Response with the specified format and values. String(format string, values ...any) Response }
type ResponseView ¶ added in v1.13.1
type View ¶ added in v1.13.1
type View interface { // Exists checks if a view with the specified name exists. Exists(view string) bool // with the current view context. This shared data can be accessed by other parts of the application. Share(key string, value any) // If the key does not exist, it returns the optional default value (if provided). Shared(key string, def ...any) any GetShared() map[string]any }
Click to show internal directories.
Click to hide internal directories.