A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://github.com/fastify/fastify-formbody below:

fastify/fastify-formbody: A Fastify plugin to parse x-www-form-urlencoded bodies

A simple plugin for Fastify that adds a content type parser for the content type application/x-www-form-urlencoded.

Plugin version Fastify version ^8.x ^5.x ^7.x ^4.x ^6.x ^3.x ^3.x ^2.x ^2.x ^1.x

Please note that if a Fastify version is out of support, then so are the corresponding versions of this plugin in the table above. See Fastify's LTS policy for more details.

Given the following code:

const fastify = require('fastify')()

fastify.register(require('@fastify/formbody'))

fastify.post('/', (req, reply) => {
  reply.send(req.body)
})

fastify.listen({ port: 8000 }, (err) => {
  if (err) throw err
})

And a POST body of:

foo=foo&bar=bar&answer=42

The sent reply would be the object:

{
  foo: 'foo',
  bar: 'bar',
  answer: 42
}

The plugin accepts an options object with the following properties:

Previously, the external qs lib was used that did things like parse nested objects. For example:

The way this is handled now using the built-in querystring.parse:

If you need nested parsing, you must configure it manually by installing the qs lib (npm i qs), and then configure an optional parser:

const fastify = require('fastify')()
const qs = require('qs')
fastify.register(require('@fastify/formbody'), { parser: str => qs.parse(str) })

Licensed under MIT.


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4