Skip to main content

Interface: WebResource

@divine/web-service.WebResource

The instance side of a web resource.

Resources are objects that produces results based on the HTTP request method. All methods in this interface are optional. You should implement the methods that are applicable to your resource.

Implemented by​

Methods​

DELETE​

▸ Optional DELETE(args): Promise<WebResponses>

Invoked when the client issues a DELETE request.

Parameters​

NameTypeDescription
argsWebArgumentsThe request arguments.

Returns​

Promise<WebResponses>

The response; a WebResponse object or just the response payload from which a successful WebResponse will be constructed.

Defined in​

web-service/src/resource.ts:175


GET​

▸ Optional GET(args): Promise<WebResponses>

Invoked when the client issues a GET request.

This method may also be invoked for HEAD requests, if HEAD is not implemented.

Parameters​

NameTypeDescription
argsWebArgumentsThe request arguments.

Returns​

Promise<WebResponses>

The response; a WebResponse object or just the response payload from which a successful WebResponse will be constructed.

Defined in​

web-service/src/resource.ts:139


▸ Optional HEAD(args): Promise<WebResponses>

Invoked when the client issues a HEAD request.

If this method is not implemented, WebService will fall back to the GET method.

Parameters​

NameTypeDescription
argsWebArgumentsThe request arguments.

Returns​

Promise<WebResponses>

The response. The response body will be discarded, but all other parts of the response applies.

Defined in​

web-service/src/resource.ts:128


OPTIONS​

▸ Optional OPTIONS(args): Promise<WebResponses>

Invoked when the client issues a OPTIONS request.

If this method is not implemented, WebService will use makeAllowHeader to construct a suitable response for the request.

Parameters​

NameTypeDescription
argsWebArgumentsThe request arguments.

Returns​

Promise<WebResponses>

The response; a WebResponse object or just the response payload from which a successful WebResponse will be constructed.

Defined in​

web-service/src/resource.ts:187


PATCH​

▸ Optional PATCH(args): Promise<WebResponses>

Invoked when the client issues a PATCH request.

Parameters​

NameTypeDescription
argsWebArgumentsThe request arguments.

Returns​

Promise<WebResponses>

The response; a WebResponse object or just the response payload from which a successful WebResponse will be constructed.

Defined in​

web-service/src/resource.ts:166


POST​

▸ Optional POST(args): Promise<WebResponses>

Invoked when the client issues a POST request.

Parameters​

NameTypeDescription
argsWebArgumentsThe request arguments.

Returns​

Promise<WebResponses>

The response; a WebResponse object or just the response payload from which a successful WebResponse will be constructed.

Defined in​

web-service/src/resource.ts:157


PUT​

▸ Optional PUT(args): Promise<WebResponses>

Invoked when the client issues a PUT request.

Parameters​

NameTypeDescription
argsWebArgumentsThe request arguments.

Returns​

Promise<WebResponses>

The response; a WebResponse object or just the response payload from which a successful WebResponse will be constructed.

Defined in​

web-service/src/resource.ts:148


catch​

▸ Optional catch(err): WebResponse | Promise<WebResponse>

A resource-specific error handler. Will be invoked whenever one of the other methods (expcect close) throws an exception.

Parameters​

NameType
errError

Returns​

WebResponse | Promise<WebResponse>

Defined in​

web-service/src/resource.ts:209


close​

▸ Optional close(): Promise<void>

Invoked when the request has been fully processed. Useful for clean-up tasks.

Returns​

Promise<void>

Defined in​

web-service/src/resource.ts:118


default​

▸ Optional default(args): Promise<WebResponses>

Invoked when the client issues any request that was not handled by HEAD, GET, PUT, POST, PATCH, DELETE or OPTIONS.

Can be used to handle multiple verbs with the same code or to handle custom verbs not defined by this interface. Note that automatic OPTIONS handling will not work as desired when this method is used, since there is no way for WebService to figure out what methods are supported.

Parameters​

NameTypeDescription
argsWebArgumentsThe request arguments.

Returns​

Promise<WebResponses>

The response; a WebResponse object or just the response payload from which a successful WebResponse will be constructed.

Defined in​

web-service/src/resource.ts:201


init​

▸ Optional init(args): Promise<void>

Initializes the resource object. This method acts like an asynchronous constructor.

Parameters​

NameTypeDescription
argsWebArgumentsThe request arguments.

Returns​

Promise<void>

Defined in​

web-service/src/resource.ts:113