@kronos-integration/service-http
http server
API
Table of Contents
- CTXBodyParamInterceptor
- CTXInterceptor
- CTXJWTVerifyInterceptor
- reportError
- CTX
- HTTPEndpoint
- endpointRouter
- ServiceHTTP
- WSEndpoint
- authenticate
CTXBodyParamInterceptor
Extends CTXInterceptor
Extracts params from request body. Supported content types are:
- application/json
- application/x-www-form-urlencoded
name
Returns string 'ctx-body-param'
CTXInterceptor
Extends Interceptor
Basic interceptor providing/consuming http request/response.
name
Returns string 'ctx-body-param'
CTXJWTVerifyInterceptor
Extends Interceptor
Only forward requests if a valid JWT token is present.
name
Returns string 'ctx-jwt-verify'
reportError
Write WWW-Authenticate header.
Parameters
-
ctx
any -
code
-
error
any -
description
string
CTX
Type: Object
Properties
HTTPEndpoint
Extends SendEndpoint
Endpoint to link against a http route.
The endpoint name may be in the form of ':'. Then will be used as http method and as the url path component.
Parameters
endpointRouter
Parameters
-
httpService
HTTPServer
Returns RequestListener
ServiceHTTP
Extends Service
HTTP server.
Properties
-
server
http.Server only present if state is running
extendetName
Returns string name with url
endpointFactoryFromConfig
On demand create RouteSendEndpoint´s.
Parameters
Returns Class RouteSendEndpoint if path is present of name starts with '/'
isSecure
Should we make a secure connection.
Returns boolean true if key is present
serverOptions
Options passed to @see {http.createServer} or @see {https.createServer}.
Returns Object
name
Returns string 'http'
WSEndpoint
Extends SendReceiveEndpoint
Endpoint to link against a websocket route.
Parameters
-
name
string endpoint name -
owner
Object owner of the endpoint -
options
Object-
options.path
string url path defaults to endpoint name
-
Properties
authenticate
Check sec-websocket-protocol header for presence of 'access_token' and the token. Throws if no valid token is present.
Parameters
-
service
Service -
request
any
install
With npm do:
npm install @kronos-integration/service-http
license
BSD-2-Clause