# Class PlatformContext

Class
Module
import { PlatformContext } from "@tsed/common"
Source/packages/platform/common/src/types/domain/PlatformContext.ts

# Overview

class PlatformContext<PReq extends PlatformRequest = PlatformRequest, PRes extends PlatformResponse = PlatformResponse> extends DIContext {
    #private;
    event: IncomingEvent;
data<span class="token punctuation">:</span> <span class="token keyword">any</span><span class="token punctuation">;</span>

error?<span class="token punctuation">:</span> unknown<span class="token punctuation">;</span>

next?<span class="token punctuation">:</span> <span class="token keyword">any</span><span class="token punctuation">;</span>

<span class="token keyword">readonly</span> response<span class="token punctuation">:</span> PRes<span class="token punctuation">;</span>

<span class="token keyword">readonly</span> request<span class="token punctuation">:</span> PReq<span class="token punctuation">;</span>

endpoint<span class="token punctuation">:</span> <a href="/api/specs/schema/types/domain/EndpointMetadata.html"><span class="token">EndpointMetadata</span></a><span class="token punctuation">;</span>

handlerMetadata<span class="token punctuation">:</span> <a href="/api/platform/platform-router/types/domain/PlatformHandlerMetadata.html"><span class="token">PlatformHandlerMetadata</span></a><span class="token punctuation">;</span>
<span class="token keyword">constructor</span><span class="token punctuation">(</span>options<span class="token punctuation">:</span> <a href="/api/platform/common/types/domain/PlatformContextOptions.html"><span class="token">PlatformContextOptions</span></a><span class="token punctuation">)</span><span class="token punctuation">;</span>
get <span class="token function">url</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">:</span> <span class="token keyword">string</span><span class="token punctuation">;</span>
get <span class="token function">app</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">:</span> <a href="/api/platform/common/types/services/PlatformApplication.html"><span class="token">PlatformApplication</span></a>&lt;TsED.Application&gt;<span class="token punctuation">;</span>
<span class="token function">start</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">:</span> Promise&lt;<span class="token keyword">void</span>&gt;<span class="token punctuation">;</span>
<span class="token function">finish</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">:</span> Promise&lt;<span class="token keyword">void</span>&gt;<span class="token punctuation">;</span>
<span class="token function">isFinished</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">:</span> <span class="token keyword">boolean</span><span class="token punctuation">;</span>
<span class="token function">isDone</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">:</span> <span class="token keyword">any</span><span class="token punctuation">;</span>

getRequest&lt;<a href="/api/platform/common/types/decorators/params/Req.html"><span class="token">Req</span></a><span class="token punctuation"> = </span><span class="token keyword">any</span>&gt;<span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">:</span> <a href="/api/platform/common/types/decorators/params/Req.html"><span class="token">Req</span></a><span class="token punctuation">;</span>

getResponse&lt;<a href="/api/platform/common/types/decorators/params/Res.html"><span class="token">Res</span></a><span class="token punctuation"> = </span><span class="token keyword">any</span>&gt;<span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">:</span> <a href="/api/platform/common/types/decorators/params/Res.html"><span class="token">Res</span></a><span class="token punctuation">;</span>

<span class="token function">getReq</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">:</span> IncomingMessage<span class="token punctuation">;</span>

<span class="token function">getRes</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">:</span> ServerResponse<span class="token punctuation">;</span>

getApp&lt;T<span class="token punctuation"> = </span><span class="token keyword">any</span>&gt;<span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">:</span> T<span class="token punctuation">;</span>

}

# Members

#private;


data: any;

The data return by the previous endpoint if you use multiple handler on the same route. By default data is empty.


error?: unknown;

The error caught by the current handler


next?: any;

readonly response: PRes;

The current PlatformResponse.


readonly request: PReq;

The current PlatformRequest.


endpoint: EndpointMetadata;

The current EndpointMetadata resolved by Ts.ED during the request.


handlerMetadata: PlatformHandlerMetadata;

The current PlatformHandlerMetadata resolved by Ts.ED during the request.


get url(): string;

get app(): PlatformApplication<TsED.Application>;

start(): Promise<void>;

finish(): Promise<void>;

isFinished(): boolean;

isDone(): any;

getRequest<Req = any>(): Req;

Return the framework request instance (Express, Koa, etc...)


getResponse<Res = any>(): Res;

Return the framework response instance (Express, Koa, etc...)


getReq(): IncomingMessage;

Get Node.js request


getRes(): ServerResponse;

Get Node.js response


getApp<T = any>(): T;

Return the original application instance.