Class: ApiRequest
Extends
IncomingMessage
Constructors
new ApiRequest()
new ApiRequest(
socket
:Socket
):ApiRequest
Parameters
Parameter | Type |
---|---|
socket | Socket |
Returns
Inherited from
IncomingMessage.constructor
Defined in
node_modules/@types/node/http.d.ts:1173
Properties
#cachedRequest
private
#cachedRequest:null
|Request
=null
The response object. This field is cached to prevent multiple response objects from being created.
Defined in
projects/plugins/packages/api/src/lib/structures/api/ApiRequest.ts:63
auth?
optional
auth:null
|AuthData
The authorization information. This field indicates three possible values:
undefined
: The authorization middleware has not been executed yet.null
: The user is not authorized.AuthData
: The user is authorized.
Defined in
projects/plugins/packages/api/src/lib/structures/api/ApiRequest.ts:29
params
params:
Record
<string
,string
> ={}
The URI parameters.
Defined in
projects/plugins/packages/api/src/lib/structures/api/ApiRequest.ts:20
query
query:
Record
<string
,string
|string
[]> ={}
The query parameters.
Defined in
projects/plugins/packages/api/src/lib/structures/api/ApiRequest.ts:15
route?
optional
route:null
|Route
<RouteOptions
>
The route that matched the request. The field indicates three possible values:
undefined
: The router handler has not been executed yet.null
: The router handler has been executed, but no route matched the request.Route
: The router handler has been executed and a route matched the request.
Since
7.0.0
Defined in
projects/plugins/packages/api/src/lib/structures/api/ApiRequest.ts:57
routerNode?
optional
routerNode:null
|RouterNode
The router node that matched the request. The field indicates three possible values:
undefined
: The router handler has not been executed yet.null
: The router handler has been executed, but no node matched the request.RouterNode
: The router handler has been executed and a node matched the request.
Since
7.0.0
Defined in
projects/plugins/packages/api/src/lib/structures/api/ApiRequest.ts:43
Accessors
#isFormContentType
Get Signature
get
private
#isFormContentType():boolean
Returns
boolean
Defined in
projects/plugins/packages/api/src/lib/structures/api/ApiRequest.ts:65
Methods
asWeb()
asWeb():
Request
The response object, used to validate the request's headers and body.
Returns
Request
Defined in
projects/plugins/packages/api/src/lib/structures/api/ApiRequest.ts:78
readBody()
readBody():
Promise
<unknown
>
Reads the request body and tries to parse using JSON or form-urlencoded.
Returns
Promise
<unknown
>
The result of the body parsing
Example
const body = await request.readBody();
Defined in
projects/plugins/packages/api/src/lib/structures/api/ApiRequest.ts:93
readBodyArrayBuffer()
readBodyArrayBuffer():
Promise
<ArrayBuffer
>
Reads the request body as an ArrayBuffer.
Returns
The result of the body parsing
Defined in
projects/plugins/packages/api/src/lib/structures/api/ApiRequest.ts:102
readBodyBlob()
readBodyBlob():
Promise
<Blob
>
Reads the request body as a Blob.
Returns
Promise
<Blob
>
The result of the body parsing
Defined in
projects/plugins/packages/api/src/lib/structures/api/ApiRequest.ts:111
readBodyFormData()
readBodyFormData():
Promise
<FormData
>
Reads the request body as a FormData.
Returns
Promise
<FormData
>
The result of the body parsing
Remarks
This will throw an error if the content type is not one of the following:
application/x-www-form-urlencoded
multipart/form-data
Defined in
projects/plugins/packages/api/src/lib/structures/api/ApiRequest.ts:127
readBodyJson()
readBodyJson():
Promise
<unknown
>
Reads the request body as text, using TextDecoder. Afterward, it parses the body as JSON with JSON.parse.
Returns
Promise
<unknown
>
The result of the body parsing
Defined in
projects/plugins/packages/api/src/lib/structures/api/ApiRequest.ts:137
readBodyText()
readBodyText():
Promise
<string
>
Reads the request body as text, using TextDecoder.
Returns
Promise
<string
>
The result of the body parsing
Defined in
projects/plugins/packages/api/src/lib/structures/api/ApiRequest.ts:146
readValidatedBody()
readValidatedBody<
Type
>(validator
:ValidatorFunction
<unknown
,Type
>):Promise
<Type
>
Identical to ApiRequest.readBody, but it validates the result.
Type Parameters
Type Parameter |
---|
Type |
Parameters
Parameter | Type | Description |
---|---|---|
validator | ValidatorFunction <unknown , Type > | The validator function to use on the body parsing result |
Returns
Promise
<Type
>
The validated body
Defined in
projects/plugins/packages/api/src/lib/structures/api/ApiRequest.ts:156
readValidatedBodyFormData()
readValidatedBodyFormData<
Type
>(validator
:ValidatorFunction
<FormData
,Type
>):Promise
<Type
>
Identical to ApiRequest.readBodyFormData, but it validates the result.
Type Parameters
Type Parameter |
---|
Type |
Parameters
Parameter | Type | Description |
---|---|---|
validator | ValidatorFunction <FormData , Type > | The validator function to use on the body parsing result |
Returns
Promise
<Type
>
The validated body
Defined in
projects/plugins/packages/api/src/lib/structures/api/ApiRequest.ts:167
readValidatedBodyJson()
readValidatedBodyJson<
Type
>(validator
:ValidatorFunction
<unknown
,Type
>):Promise
<Type
>
Identical to ApiRequest.readBodyJson, but it validates the result.
Type Parameters
Type Parameter |
---|
Type |
Parameters
Parameter | Type | Description |
---|---|---|
validator | ValidatorFunction <unknown , Type > | The validator function to use on the body parsing result |
Returns
Promise
<Type
>
The validated body
Defined in
projects/plugins/packages/api/src/lib/structures/api/ApiRequest.ts:177
readValidatedBodyText()
readValidatedBodyText<
Type
>(validator
:ValidatorFunction
<string
,Type
>):Promise
<Type
>
Identical to ApiRequest.readBodyText, but it validates the result.
Type Parameters
Type Parameter |
---|
Type |
Parameters
Parameter | Type | Description |
---|---|---|
validator | ValidatorFunction <string , Type > | The validator function to use on the body parsing result |
Returns
Promise
<Type
>
The validated body
Defined in
projects/plugins/packages/api/src/lib/structures/api/ApiRequest.ts:187