You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
3.2 KiB
3.2 KiB
Fastify
Request
The first parameter of the handler function is Request.
Request is a core Fastify object containing the following fields:
query- the parsed querystring, its format is specified byquerystringParserbody- the request payload, see Content-Type Parser for details on what request payloads Fastify natively parses and how to support other content typesparams- the params matching the URLheaders- the headers getter and setterraw- the incoming HTTP request from Node corereq(deprecated, use.rawinstead) - the incoming HTTP request from Node coreserver- The Fastify server instance, scoped to the current encapsulation contextid- the request IDlog- the logger instance of the incoming requestip- the IP address of the incoming requestips- an array of the IP addresses, ordered from closest to furthest, in theX-Forwarded-Forheader of the incoming request (only when thetrustProxyoption is enabled)hostname- the host of the incoming request (derived fromX-Forwarded-Hostheader when thetrustProxyoption is enabled). For HTTP/2 compatibility it returns:authorityif no host header exists.protocol- the protocol of the incoming request (httpsorhttp)method- the method of the incoming requesturl- the URL of the incoming requestrouterMethod- the method defined for the router that is handling the requestrouterPath- the path pattern defined for the router that is handling the requestis404- true if request is being handled by 404 handler, false if it is notconnection- Deprecated, usesocketinstead. The underlying connection of the incoming request.socket- the underlying connection of the incoming requestcontext- A Fastify internal object. You should not use it directly or modify it. It is useful to access one special key:context.config- The routeconfigobject.
Headers
The request.headers is a getter that returns an Object with the headers of the
incoming request. You can set custom headers like this:
request.headers = {
'foo': 'bar',
'baz': 'qux'
}
This operation will add to the request headers the new values that can be read
calling request.headers.bar. Moreover, you can still access the standard
request's headers with the request.raw.headers property.
Note: For performance reason on
not foundroute, you may see that we will add an extra propertySymbol('fastify.RequestAcceptVersion')on the headers.
fastify.post('/:params', options, function (request, reply) {
console.log(request.body)
console.log(request.query)
console.log(request.params)
console.log(request.headers)
console.log(request.raw)
console.log(request.server)
console.log(request.id)
console.log(request.ip)
console.log(request.ips)
console.log(request.hostname)
console.log(request.protocol)
console.log(request.url)
console.log(request.routerMethod)
console.log(request.routerPath)
request.log.info('some info')
})