utils

package
v1.3.0 Latest Latest
Warning

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

Go to latest
Published: Jan 6, 2025 License: Apache-2.0 Imports: 13 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetApiKeyValue

func GetApiKeyValue(key ApiFields, value string) string

func GetGraphQLData

func GetGraphQLData(r *http.Request, maximumBodySize int) *models.GraphQLData

func GetHeaderList

func GetHeaderList(r *http.Request) string

func GetIP

func GetIP(r *http.Request) (string, error)

func GetMicroTime

func GetMicroTime() string

GetMicroTime returns the current unix timestamp in microseconds This function needs to implement the time.UnixMicro function when Tyk will support the go version >= 1.18

func GetProtocol

func GetProtocol(r *http.Request) string

func GetURI

func GetURI(r *http.Request) string

GetURI returns the URI without the query parameters nor the Fragments This function needs to implement the strings.Cut function when Tyk will support the go version >= 1.18

func GetURL

func GetURL(r *http.Request) string

func IsGraphQLRequest

func IsGraphQLRequest(r *http.Request) bool

func IsMatchingReferrer

func IsMatchingReferrer(r *http.Request) (bool, error)

func IsNullOrWhitespace

func IsNullOrWhitespace(s string) bool

func ParseGraphQLQuery

func ParseGraphQLQuery(body string) *models.GraphQLData

func RestoreReferrer

func RestoreReferrer(r *http.Request) error

Types

type ApiFields

type ApiFields string
const (
	Accept                 ApiFields = "Accept"
	AcceptCharset          ApiFields = "AcceptCharset"
	AcceptEncoding         ApiFields = "AcceptEncoding"
	AcceptLanguage         ApiFields = "AcceptLanguage"
	CacheControl           ApiFields = "CacheControl"
	ClientID               ApiFields = "ClientID"
	Connection             ApiFields = "Connection"
	ContentType            ApiFields = "ContentType"
	From                   ApiFields = "From"
	GraphQLOperationCount  ApiFields = "GraphQLOperationCount"
	GraphQLOperationName   ApiFields = "GraphQLOperationName"
	GraphQLOperationType   ApiFields = "GraphQLOperationType"
	HeadersList            ApiFields = "HeadersList"
	Host                   ApiFields = "Host"
	Origin                 ApiFields = "Origin"
	Pragma                 ApiFields = "Pragma"
	Referer                ApiFields = "Referer"
	Request                ApiFields = "Request"
	SecCHDeviceMemory      ApiFields = "SecCHDeviceMemory"
	SecCHUA                ApiFields = "SecCHUA"
	SecCHUAArch            ApiFields = "SecCHUAArch"
	SecCHUAFullVersionList ApiFields = "SecCHUAFullVersionList"
	SecCHUAMobile          ApiFields = "SecCHUAMobile"
	SecCHUAModel           ApiFields = "SecCHUAModel"
	SecCHUAPlatform        ApiFields = "SecCHUAPlatform"
	SecFetchUser           ApiFields = "SecFetchUser"
	SecFetchDest           ApiFields = "SecFetchDest"
	SecFetchMode           ApiFields = "SecFetchMode"
	SecFetchSite           ApiFields = "SecFetchSite"
	ServerHostname         ApiFields = "ServerHostname"
	ServerName             ApiFields = "ServerName"
	TrueClientIP           ApiFields = "TrueClientIP"
	UserAgent              ApiFields = "UserAgent"
	Via                    ApiFields = "Via"
	XForwardedForIP        ApiFields = "XForwardedForIP"
	XRealIP                ApiFields = "XRealIP"
	XRequestedWith         ApiFields = "XRequestedWith"
)

Jump to

Keyboard shortcuts

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