http

package
v0.1.65 Latest Latest
Warning

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

Go to latest
Published: Mar 21, 2024 License: MIT Imports: 19 Imported by: 0

README

HTTP plugin

  • Client
  • Server

Documentation

Index

Constants

View Source
const (
	HeaderContentType   = "Content-Type"
	MIMEApplicationJSON = "application/json"
	MIMEApplicationXML  = "application/xml"
	MIMETextXML         = "text/xml"
	MimeTextPlain       = "text/plain"
	MIMETextHTML        = "text/html"
	MIMEApplicationForm = "application/x-www-form-urlencoded"
	MIMEMultipartForm   = "multipart/form-data"
)
View Source
const (
	ServerComponent    string = "http_server"
	ServerResponsePort        = "response"
	ServerRequestPort         = "request"
	ServerStartPort           = "start"
	ServerStopPort            = "stop"
	ServerStatusPort          = "status"
)
View Source
const ClientComponent = "http_client"

Variables

This section is empty.

Functions

This section is empty.

Types

type Client

type Client struct {
}

func (Client) GetInfo

func (h Client) GetInfo() module.ComponentInfo

func (Client) Handle

func (h Client) Handle(ctx context.Context, handler module.Handler, port string, message interface{}) error

func (Client) Instance

func (h Client) Instance() module.Component

func (Client) Ports

func (h Client) Ports() []module.NodePort

type ClientRequest

type ClientRequest struct {
	Context ClientRequestContext `json:"context" configurable:"true" title:"Context" description:"Message to be sent further" propertyOrder:"1"`
	Request `json:"request" title:"HTTP request" required:"true" propertyOrder:"2"`
}

type ClientRequestBody

type ClientRequestBody any

type ClientRequestContext

type ClientRequestContext any

type ClientResponse

type ClientResponse struct {
	Request  ClientRequest `json:"request"`
	Response string        `json:"response"`
}

type ContentType

type ContentType string

func (ContentType) JSONSchema

func (c ContentType) JSONSchema() (jsonschema.Schema, error)
type Header struct {
	Key   string `json:"key" required:"true" title:"Key" colSpan:"col-span-6"`
	Value string `json:"value" required:"true" title:"Value" colSpan:"col-span-6"`
}

type Request

type Request struct {
	Method  string            `` /* 155-byte string literal not displayed */
	URL     string            `json:"url" required:"true" title:"URL" format:"uri" propertyOrder:"2"`
	Headers []Header          `json:"headers" required:"true" title:"Headers" propertyOrder:"3"`
	Body    ClientRequestBody `json:"body" configurable:"true" title:"Request Body" propertyOrder:"4"`
}

type Response added in v0.1.32

type Response struct {
	Status     string      `json:"status"`
	StatusCode int         `json:"statusCode"`
	Body       interface{} `json:"body"`
}

type Server

type Server struct {
	// contains filtered or unexported fields
}

func (*Server) GetInfo

func (h *Server) GetInfo() module.ComponentInfo

func (*Server) Handle

func (h *Server) Handle(ctx context.Context, handler module.Handler, port string, msg interface{}) error

func (*Server) Instance

func (h *Server) Instance() module.Component

func (*Server) Ports

func (h *Server) Ports() []module.NodePort

type ServerRequest

type ServerRequest struct {
	Context       ServerStartContext `json:"context"`
	RequestID     string             `json:"requestID" required:"true"`
	RequestURI    string             `json:"requestURI" required:"true"`
	RequestParams url.Values         `json:"requestParams" required:"true"`
	Host          string             `json:"host" required:"true"`
	Method        string             `json:"method" required:"true" title:"Method" enum:"GET,POST,PATCH,PUT,DELETE" enumTitles:"GET,POST,PATCH,PUT,DELETE"`
	RealIP        string             `json:"realIP"`
	Headers       []Header           `json:"headers,omitempty"`
	Body          any                `json:"body"`
	Scheme        string             `json:"scheme"`
}

type ServerResponse

type ServerResponse struct {
	RequestID   string             `` /* 161-byte string literal not displayed */
	StatusCode  int                `` /* 157-byte string literal not displayed */
	ContentType ContentType        `json:"contentType" required:"true" propertyOrder:"3"`
	Headers     []Header           `json:"headers"  title:"Response headers" propertyOrder:"4"`
	Body        ServerResponseBody `json:"body" title:"Response body" configurable:"true" propertyOrder:"5"`
}

type ServerResponseBody

type ServerResponseBody any

type ServerSettings

type ServerSettings struct {
	EnableStatusPort bool `` /* 127-byte string literal not displayed */
	EnableStopPort   bool `json:"enableStopPort" required:"true" title:"Enable stop port" description:"Stop port allows you to stop the server"`
	EnableStartPort  bool `json:"enableStartPort" required:"true" title:"Enable start port" description:"Start port allows you to start the server"`
}

type ServerStart added in v0.1.38

type ServerStart struct {
	Context      ServerStartContext `json:"context" configurable:"true" title:"Context" description:"Start context" propertyOrder:"1"`
	AutoHostName bool               `` /* 132-byte string literal not displayed */
	Hostnames    []string           `` //requiredWhen:"['kind', 'equal', 'enum 1']"
	/* 136-byte string literal not displayed */
	ReadTimeout  int `` /* 233-byte string literal not displayed */
	WriteTimeout int `` /* 222-byte string literal not displayed */
}

type ServerStartContext added in v0.1.38

type ServerStartContext any

type ServerStartControl added in v0.1.42

type ServerStartControl struct {
	Status string `json:"status" title:"Status" readonly:"true" propertyOrder:"2"`
	Start  bool   `json:"start" format:"button" title:"Start" required:"true" description:"Start HTTP server" propertyOrder:"1"`
}

type ServerStatus

type ServerStatus struct {
	Context    ServerStartContext `json:"context" title:"Context" propertyOrder:"1"`
	ListenAddr []string           `json:"listenAddr" title:"Listen Address" readonly:"true" propertyOrder:"2"`
	IsRunning  bool               `json:"isRunning" title:"Is running" readonly:"true" propertyOrder:"3"`
}

type ServerStop added in v0.1.38

type ServerStop struct {
}

type ServerStopControl added in v0.1.42

type ServerStopControl struct {
	Stop       bool     `json:"stop" format:"button" title:"Stop" required:"true" description:"Stop HTTP server" propertyOrder:"1"`
	Status     string   `json:"status" title:"Status" readonly:"true" propertyOrder:"2"`
	ListenAddr []string `json:"listenAddr" title:"Listen Address" readonly:"true" propertyOrder:"3"`
}

Jump to

Keyboard shortcuts

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