Documentation
¶
Index ¶
- func GetModuleContextNamespace(modCtx *ModuleContext) *spec.Namespace
- func GetModuleContextResponseWriterTracker(modCtx *ModuleContext) spec.ResponseWriterTracker
- func GetModuleContextRoute(modCtx *ModuleContext) *spec.Route
- func GetModuleContextService(modCtx *ModuleContext) *spec.Service
- type CookieOptions
- type ModuleContext
- func (modCtx *ModuleContext) Get(key string) any
- func (modCtx *ModuleContext) Namespace() *spec.Namespace
- func (modCtx *ModuleContext) PathParam(key string) string
- func (modCtx *ModuleContext) PathParams() map[string]string
- func (modCtx *ModuleContext) Query() url.Values
- func (modCtx *ModuleContext) Request() *RequestWrapper
- func (modCtx *ModuleContext) Response() *ResponseWriterWrapper
- func (modCtx *ModuleContext) Route() *spec.Route
- func (modCtx *ModuleContext) Service() *spec.Service
- func (modCtx *ModuleContext) Set(key string, value any)
- func (modCtx *ModuleContext) Upstream() *ResponseWrapper
- type RequestWrapper
- type ResponseWrapper
- func (rw *ResponseWrapper) Cookie() []*http.Cookie
- func (rw *ResponseWrapper) Query() url.Values
- func (rw *ResponseWrapper) ReadBody() *goja.Promise
- func (rw *ResponseWrapper) ReadJson() *goja.Promise
- func (rw *ResponseWrapper) Redirect(url string)
- func (rw *ResponseWrapper) RedirectPermanent(url string)
- func (rw *ResponseWrapper) Status(status int) *ResponseWrapper
- func (rw *ResponseWrapper) WriteBody(data any) error
- func (rw *ResponseWrapper) WriteJson(data any) error
- type ResponseWriterWrapper
- func (g *ResponseWriterWrapper) Cookie(name string, value string, opts ...*CookieOptions) (*ResponseWriterWrapper, error)
- func (g *ResponseWriterWrapper) End(data any) error
- func (g *ResponseWriterWrapper) GetCookie(name string) *http.Cookie
- func (g *ResponseWriterWrapper) GetCookies() []*http.Cookie
- func (g *ResponseWriterWrapper) Json(data any) error
- func (g *ResponseWriterWrapper) Location(url string) *ResponseWriterWrapper
- func (g *ResponseWriterWrapper) Redirect(url string)
- func (g *ResponseWriterWrapper) RedirectPermanent(url string)
- func (g *ResponseWriterWrapper) Send(data any) error
- func (g *ResponseWriterWrapper) Status(status int) *ResponseWriterWrapper
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GetModuleContextNamespace ¶
func GetModuleContextNamespace(modCtx *ModuleContext) *spec.Namespace
func GetModuleContextResponseWriterTracker ¶
func GetModuleContextResponseWriterTracker(modCtx *ModuleContext) spec.ResponseWriterTracker
func GetModuleContextRoute ¶
func GetModuleContextRoute(modCtx *ModuleContext) *spec.Route
func GetModuleContextService ¶
func GetModuleContextService(modCtx *ModuleContext) *spec.Service
Types ¶
type CookieOptions ¶
type CookieOptions struct {
Domain string `json:"domain"`
Expires time.Time `json:"expires"`
HttpOnly bool `json:"httpOnly"`
MaxAge int `json:"maxAge"`
Path string `json:"path"`
Priority string `json:"priority"`
Secure bool `json:"secure"`
Signed bool `json:"signed"`
SameSite string `json:"sameSite"`
}
type ModuleContext ¶
type ModuleContext struct {
ID string `json:"id"`
// contains filtered or unexported fields
}
func ModuleContextWithError ¶
func ModuleContextWithError( modCtx *ModuleContext, err error, ) *ModuleContext
func ModuleContextWithResponse ¶
func ModuleContextWithResponse( modCtx *ModuleContext, resp *http.Response, ) *ModuleContext
func NewModuleContext ¶
func NewModuleContext( loop *eventloop.EventLoop, rw http.ResponseWriter, req *http.Request, route *spec.DGateRoute, params map[string]string, ) *ModuleContext
func (*ModuleContext) Get ¶
func (modCtx *ModuleContext) Get(key string) any
func (*ModuleContext) Namespace ¶
func (modCtx *ModuleContext) Namespace() *spec.Namespace
func (*ModuleContext) PathParam ¶ added in v0.8.0
func (modCtx *ModuleContext) PathParam(key string) string
func (*ModuleContext) PathParams ¶ added in v0.8.0
func (modCtx *ModuleContext) PathParams() map[string]string
func (*ModuleContext) Query ¶
func (modCtx *ModuleContext) Query() url.Values
func (*ModuleContext) Request ¶
func (modCtx *ModuleContext) Request() *RequestWrapper
func (*ModuleContext) Response ¶
func (modCtx *ModuleContext) Response() *ResponseWriterWrapper
func (*ModuleContext) Route ¶
func (modCtx *ModuleContext) Route() *spec.Route
func (*ModuleContext) Service ¶
func (modCtx *ModuleContext) Service() *spec.Service
func (*ModuleContext) Set ¶
func (modCtx *ModuleContext) Set(key string, value any)
func (*ModuleContext) Upstream ¶
func (modCtx *ModuleContext) Upstream() *ResponseWrapper
type RequestWrapper ¶
type RequestWrapper struct {
Method string
URL string
Headers http.Header
Query url.Values
Host string
RemoteAddress string
Proto string
ContentLength int64
// contains filtered or unexported fields
}
func GetModuleContextRequest ¶
func GetModuleContextRequest(modCtx *ModuleContext) *RequestWrapper
func NewRequestWrapper ¶
func NewRequestWrapper( req *http.Request, loop *eventloop.EventLoop, ) *RequestWrapper
func (*RequestWrapper) ReadBody ¶ added in v0.8.0
func (g *RequestWrapper) ReadBody() (*goja.ArrayBuffer, error)
func (*RequestWrapper) ReadJson ¶ added in v0.8.0
func (g *RequestWrapper) ReadJson() (any, error)
func (*RequestWrapper) WriteBody ¶ added in v0.8.0
func (g *RequestWrapper) WriteBody(data any) error
func (*RequestWrapper) WriteJson ¶ added in v0.8.0
func (g *RequestWrapper) WriteJson(data any) error
type ResponseWrapper ¶
type ResponseWrapper struct {
Headers http.Header `json:"headers"`
StatusCode int `json:"statusCode"`
StatusText string `json:"statusText"`
Trailer http.Header `json:"trailer"`
Protocol string `json:"protocol"`
Uncompressed bool `json:"uncompressed"`
ContentLength int64 `json:"contentLength"`
TransferEncoding []string `json:"transferEncoding"`
// contains filtered or unexported fields
}
func GetModuleContextResponse ¶
func GetModuleContextResponse(modCtx *ModuleContext) *ResponseWrapper
func NewResponseWrapper ¶
func NewResponseWrapper( resp *http.Response, loop *eventloop.EventLoop, ) *ResponseWrapper
func (*ResponseWrapper) Cookie ¶
func (rw *ResponseWrapper) Cookie() []*http.Cookie
func (*ResponseWrapper) Query ¶
func (rw *ResponseWrapper) Query() url.Values
func (*ResponseWrapper) ReadBody ¶ added in v0.8.0
func (rw *ResponseWrapper) ReadBody() *goja.Promise
func (*ResponseWrapper) ReadJson ¶ added in v0.8.0
func (rw *ResponseWrapper) ReadJson() *goja.Promise
func (*ResponseWrapper) Redirect ¶ added in v0.8.0
func (rw *ResponseWrapper) Redirect(url string)
func (*ResponseWrapper) RedirectPermanent ¶ added in v0.8.0
func (rw *ResponseWrapper) RedirectPermanent(url string)
func (*ResponseWrapper) Status ¶ added in v0.8.0
func (rw *ResponseWrapper) Status(status int) *ResponseWrapper
func (*ResponseWrapper) WriteBody ¶ added in v0.8.0
func (rw *ResponseWrapper) WriteBody(data any) error
func (*ResponseWrapper) WriteJson ¶ added in v0.8.0
func (rw *ResponseWrapper) WriteJson(data any) error
type ResponseWriterWrapper ¶
type ResponseWriterWrapper struct {
Headers http.Header
HeadersSent bool
Locals map[string]any
// contains filtered or unexported fields
}
func NewResponseWriterWrapper ¶
func NewResponseWriterWrapper( rw http.ResponseWriter, req *http.Request, ) *ResponseWriterWrapper
func (*ResponseWriterWrapper) Cookie ¶
func (g *ResponseWriterWrapper) Cookie(name string, value string, opts ...*CookieOptions) (*ResponseWriterWrapper, error)
func (*ResponseWriterWrapper) End ¶
func (g *ResponseWriterWrapper) End(data any) error
End sends the response.
func (*ResponseWriterWrapper) GetCookie ¶ added in v0.8.0
func (g *ResponseWriterWrapper) GetCookie(name string) *http.Cookie
func (*ResponseWriterWrapper) GetCookies ¶ added in v0.8.0
func (g *ResponseWriterWrapper) GetCookies() []*http.Cookie
func (*ResponseWriterWrapper) Json ¶
func (g *ResponseWriterWrapper) Json(data any) error
Json sends a JSON response.
func (*ResponseWriterWrapper) Location ¶
func (g *ResponseWriterWrapper) Location(url string) *ResponseWriterWrapper
func (*ResponseWriterWrapper) Redirect ¶
func (g *ResponseWriterWrapper) Redirect(url string)
func (*ResponseWriterWrapper) RedirectPermanent ¶
func (g *ResponseWriterWrapper) RedirectPermanent(url string)
func (*ResponseWriterWrapper) Send ¶
func (g *ResponseWriterWrapper) Send(data any) error
func (*ResponseWriterWrapper) Status ¶
func (g *ResponseWriterWrapper) Status(status int) *ResponseWriterWrapper
Click to show internal directories.
Click to hide internal directories.