nextjs-koa-api / Koa / BaseContext
Koa.BaseContext
-
ContextDelegatedRequest
-
ContextDelegatedResponse
↳
BaseContext
- URL
- assert
- body
- etag
- fresh
- header
- headerSent
- headers
- host
- hostname
- href
- idempotent
- ip
- ips
- lastModified
- length
- message
- method
- origin
- path
- protocol
- query
- querystring
- search
- secure
- socket
- stale
- status
- subdomains
- type
- url
- writable
- accepts
- acceptsCharsets
- acceptsEncodings
- acceptsLanguages
- append
- attachment
- flushHeaders
- get
- inspect
- is
- onerror
- redirect
- remove
- set
- throw
- toJSON
- vary
• URL: URL
Get WHATWG parsed URL object.
ContextDelegatedRequest.URL
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:113
• assert: typeof assert
Similar to .throw(), adds assertion.
this.assert(this.user, 401, 'Please login!');
See: https://github.com/jshttp/http-assert
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:676
• body: unknown
Get/Set response body.
ContextDelegatedResponse.body
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:321
• etag: string
Get/Set the ETag of a response. This will normalize the quotes if necessary.
this.response.etag = 'md5hashsum';
this.response.etag = '"md5hashsum"';
this.response.etag = 'W/"123456789"';
param
api
public
ContextDelegatedResponse.etag
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:398
• fresh: boolean
Check if the request is fresh, aka Last-Modified and/or the ETag still match.
ContextDelegatedRequest.fresh
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:120
• header: IncomingHttpHeaders
Return request header.
ContextDelegatedRequest.header
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:43
• headerSent: boolean
Check if a header has been written to the socket.
ContextDelegatedResponse.headerSent
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:332
• headers: IncomingHttpHeaders
Return request header, alias as request.header
ContextDelegatedRequest.headers
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:48
• host: string
Parse the "Host" header field host and support X-Forwarded-Host when a proxy is enabled.
ContextDelegatedRequest.host
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:101
• hostname: string
Parse the "Host" header field hostname and support X-Forwarded-Host when a proxy is enabled.
ContextDelegatedRequest.hostname
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:108
• href: string
Get full request URL.
ContextDelegatedRequest.href
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:63
• idempotent: boolean
Check if the request is idempotent.
ContextDelegatedRequest.idempotent
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:132
• ip: string
Request remote address. Supports X-Forwarded-For when app.proxy is true.
ContextDelegatedRequest.ip
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:159
• ips: string
[]
When app.proxy
is true
, parse
the "X-Forwarded-For" ip address list.
For example if the value were "client, proxy1, proxy2"
you would receive the array ["client", "proxy1", "proxy2"]
where "proxy2" is the furthest down-stream.
ContextDelegatedRequest.ips
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:169
• lastModified: Date
Get the Last-Modified date in Date form, if it exists. Set the Last-Modified date using a string or a Date.
this.response.lastModified = new Date();
this.response.lastModified = '2013-09-13';
ContextDelegatedResponse.lastModified
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:385
• length: number
Return parsed response Content-Length when present.
Set Content-Length field to n
.
ContextDelegatedResponse.length
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:327
• message: string
Get response status message
ContextDelegatedResponse.message
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:316
• method: string
Get/Set request method.
ContextDelegatedRequest.method
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:68
• origin: string
Get origin of URL.
ContextDelegatedRequest.origin
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:58
• path: string
Get request pathname. Set pathname, retaining the query-string when present.
ContextDelegatedRequest.path
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:74
• protocol: string
Return the protocol string "http" or "https" when requested with TLS. When the proxy setting is enabled the "X-Forwarded-Proto" header field will be trusted. If you're running behind a reverse proxy that supplies https for you this may be enabled.
ContextDelegatedRequest.protocol
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:147
• query: ParsedUrlQuery
Get parsed query-string. Set query-string as an object.
ContextDelegatedRequest.query
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:80
• querystring: string
Get/Set query string.
ContextDelegatedRequest.querystring
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:85
• search: string
Get the search string. Same as the querystring except it includes the leading ?.
Set the search string. Same as response.querystring= but included for ubiquity.
ContextDelegatedRequest.search
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:94
• secure: boolean
Short-hand for:
this.protocol == 'https'
ContextDelegatedRequest.secure
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:154
• socket: Socket
Return the request socket.
ContextDelegatedRequest.socket
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:137
• stale: boolean
Check if the request is stale, aka "Last-Modified" and / or the "ETag" for the resource has changed.
ContextDelegatedRequest.stale
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:127
• status: number
Get/Set response status code.
ContextDelegatedResponse.status
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:311
• subdomains: string
[]
Return subdomains as an array.
Subdomains are the dot-separated parts of the host before the main domain
of the app. By default, the domain of the app is assumed to be the last two
parts of the host. This can be changed by setting app.subdomainOffset
.
For example, if the domain is "tobi.ferrets.example.com":
If app.subdomainOffset
is not set, this.subdomains is
["ferrets", "tobi"]
.
If app.subdomainOffset
is 3, this.subdomains is ["tobi"]
.
ContextDelegatedRequest.subdomains
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:183
• type: string
Return the response mime type void of parameters such as "charset".
Set Content-Type response header with type
through mime.lookup()
when it does not contain a charset.
Examples:
this.type = '.html';
this.type = 'html';
this.type = 'json';
this.type = 'application/json';
this.type = 'png';
ContextDelegatedResponse.type
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:376
• url: string
Get/Set request URL.
ContextDelegatedRequest.url
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:53
• writable: boolean
Checks if the request is writable. Tests for the existence of the socket as node sometimes does not set it.
ContextDelegatedResponse.writable
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:436
▸ accepts(): string
[]
Check if the given type(s)
is acceptable, returning
the best match when true, otherwise false
, in which
case you should respond with 406 "Not Acceptable".
The type
value may be a single mime type string
such as "application/json", the extension name
such as "json" or an array ["json", "html", "text/plain"]
. When a list
or array is given the best match, if any is returned.
Examples:
// Accept: text/html
this.accepts('html');
// => "html"
// Accept: text/*, application/json
this.accepts('html');
// => "html"
this.accepts('text/html');
// => "text/html"
this.accepts('json', 'text');
// => "json"
this.accepts('application/json');
// => "application/json"
// Accept: text/*, application/json
this.accepts('image/png');
this.accepts('png');
// => undefined
// Accept: text/*;q=.5, application/json
this.accepts(['html', 'json']);
this.accepts('html', 'json');
// => "json"
string
[]
ContextDelegatedRequest.accepts
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:221
▸ accepts(...types
): string
| false
Name | Type |
---|---|
...types |
string [] |
string
| false
ContextDelegatedRequest.accepts
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:222
▸ accepts(types
): string
| false
Name | Type |
---|---|
types |
string [] |
string
| false
ContextDelegatedRequest.accepts
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:223
▸ acceptsCharsets(): string
[]
Return accepted charsets or best fit based on charsets
.
Given Accept-Charset: utf-8, iso-8859-1;q=0.2, utf-7;q=0.5
an array sorted by quality is returned:
['utf-8', 'utf-7', 'iso-8859-1']
string
[]
ContextDelegatedRequest.acceptsCharsets
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:245
▸ acceptsCharsets(...charsets
): string
| false
Name | Type |
---|---|
...charsets |
string [] |
string
| false
ContextDelegatedRequest.acceptsCharsets
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:246
▸ acceptsCharsets(charsets
): string
| false
Name | Type |
---|---|
charsets |
string [] |
string
| false
ContextDelegatedRequest.acceptsCharsets
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:247
▸ acceptsEncodings(): string
[]
Return accepted encodings or best fit based on encodings
.
Given Accept-Encoding: gzip, deflate
an array sorted by quality is returned:
['gzip', 'deflate']
string
[]
ContextDelegatedRequest.acceptsEncodings
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:233
▸ acceptsEncodings(...encodings
): string
| false
Name | Type |
---|---|
...encodings |
string [] |
string
| false
ContextDelegatedRequest.acceptsEncodings
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:234
▸ acceptsEncodings(encodings
): string
| false
Name | Type |
---|---|
encodings |
string [] |
string
| false
ContextDelegatedRequest.acceptsEncodings
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:235
▸ acceptsLanguages(): string
[]
Return accepted languages or best fit based on langs
.
Given Accept-Language: en;q=0.8, es, pt
an array sorted by quality is returned:
['es', 'pt', 'en']
string
[]
ContextDelegatedRequest.acceptsLanguages
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:257
▸ acceptsLanguages(...langs
): string
| false
Name | Type |
---|---|
...langs |
string [] |
string
| false
ContextDelegatedRequest.acceptsLanguages
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:258
▸ acceptsLanguages(langs
): string
| false
Name | Type |
---|---|
langs |
string [] |
string
| false
ContextDelegatedRequest.acceptsLanguages
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:259
▸ append(field
, val
): void
Append additional header field
with value val
.
Examples:
this.append('Link', ['<http://localhost/>', '<http://localhost:3000/>']);
this.append('Set-Cookie', 'foo=bar; Path=/; HttpOnly');
this.append('Warning', '199 Miscellaneous warning');
Name | Type |
---|---|
field |
string |
val |
string | string [] |
void
ContextDelegatedResponse.append
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:424
▸ attachment(filename?
, options?
): void
Set Content-Disposition to "attachment" to signal the client to prompt for download. Optionally specify the filename of the download and some options.
Name | Type |
---|---|
filename? |
string |
options? |
Options |
void
ContextDelegatedResponse.attachment
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:359
▸ flushHeaders(): void
Flush any set headers, and begin the body
void
ContextDelegatedResponse.flushHeaders
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:441
▸ get(field
): string
Return request header. If the header is not set, will return an empty string.
The Referrer
header field is special-cased, both Referrer
and
Referer
are interchangeable.
Examples:
this.get('Content-Type');
// => "text/plain"
this.get('content-type');
// => "text/plain"
this.get('Something');
// => ''
Name | Type |
---|---|
field |
string |
string
ContextDelegatedRequest.get
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:304
▸ inspect(): any
util.inspect() implementation, which just returns the JSON output.
any
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:657
▸ is(...types
): null
| string
| false
Check if the incoming request contains the "Content-Type"
header field, and it contains any of the give mime type
s.
If there is no request body, null
is returned.
If there is no content type, false
is returned.
Otherwise, it returns the first type
that matches.
Examples:
// With Content-Type: text/html; charset=utf-8
this.is('html'); // => 'html'
this.is('text/html'); // => 'text/html'
this.is('text/*', 'application/json'); // => 'text/html'
// When Content-Type is application/json
this.is('json', 'urlencoded'); // => 'json'
this.is('application/json'); // => 'application/json'
this.is('html', 'application/*'); // => 'application/json'
this.is('html'); // => false
Name | Type |
---|---|
...types |
string [] |
null
| string
| false
ContextDelegatedRequest.is
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:283
▸ is(types
): null
| string
| false
Name | Type |
---|---|
types |
string [] |
null
| string
| false
ContextDelegatedRequest.is
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:284
▸ onerror(err
): void
Default error handling.
Name | Type |
---|---|
err |
Error |
void
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:699
▸ redirect(url
, alt?
): void
Perform a 302 redirect to url
.
The string "back" is special-cased
to provide Referrer support, when Referrer
is not present alt
or "/" is used.
Examples:
this.redirect('back'); this.redirect('back', '/index.html'); this.redirect('/login'); this.redirect('http://google.com');
Name | Type |
---|---|
url |
string |
alt? |
string |
void
ContextDelegatedResponse.redirect
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:353
▸ remove(field
): void
Remove header field
.
Name | Type |
---|---|
field |
string |
void
ContextDelegatedResponse.remove
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:429
▸ set(field
): void
Set header field
to val
, or pass
an object of header fields.
Examples:
this.set('Foo', ['bar', 'baz']); this.set('Accept', 'application/json'); this.set({ Accept: 'text/plain', 'X-API-Key': 'tobi' });
Name | Type |
---|---|
field |
Object |
void
ContextDelegatedResponse.set
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:410
▸ set(field
, val
): void
Name | Type |
---|---|
field |
string |
val |
string | string [] |
void
ContextDelegatedResponse.set
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:411
▸ throw(message
, code?
, properties?
): never
Throw an error with msg
and optional status
defaulting to 500. Note that these are user-level
errors, and the message may be exposed to the client.
this.throw(403) this.throw('name required', 400) this.throw(400, 'name required') this.throw('something exploded') this.throw(new Error('invalid'), 400); this.throw(400, new Error('invalid'));
See: https://github.com/jshttp/http-errors
Name | Type |
---|---|
message |
string |
code? |
number |
properties? |
Object |
never
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:692
▸ throw(status
): never
Name | Type |
---|---|
status |
number |
never
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:693
▸ throw(...properties
): never
Name | Type |
---|---|
...properties |
(string | number | {})[] |
never
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:694
▸ toJSON(): any
Return JSON representation.
Here we explicitly invoke .toJSON() on each object, as iteration will otherwise fail due to the getters and cause utilities such as clone() to fail.
any
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:667
▸ vary(field
): void
Vary on field
.
Name | Type |
---|---|
field |
string |
void
ContextDelegatedResponse.vary
node_modules/.pnpm/@types+koa@2.13.4/node_modules/@types/koa/index.d.ts:337