---
name: "Dancer::Serializer"
section: "3pm"
platform: "linux"
package: "libdancer-perl"
version: "1.3521+dfsg-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Dancer::Serializer"
---

# Dancer::Serializer(3pm)

serializer wrapper for Dancer

## NAME

Dancer::Serializer - serializer wrapper for Dancer

## VERSION

version 1.3521

## DESCRIPTION

This module is the wrapper that provides support for different serializers.

## USAGE

### Configuration

The **serializer** configuration variable tells Dancer which serializer to use to deserialize request and serialize response.

You change it either in your config.yml file:

```
    serializer: "YAML"
```

Or in the application code:

```
    # setting JSON as the default serializer
    set serializer => 'JSON';
```

In your routes you can access parameters just like any route.

When in a route you return a Perl data structure, it will be serialized automatically to the respective serialized engine (for instance, `"JSON"`).

For `"PUT"` and `"POST"` methods you can access the `"request->body"` as a string, and you can unserialize it, if you really need to. If your content type is recognized by the serializer, `"request->body"` will be unserialized automatically, and it will be available as a standard parameter.

For instance, if you call

```
 curl -X POST -H 'Content-Type: application/json' -d '{"id":"bar"}' /foo
```

your `"foo"` route can do something like:

```
  post "/foo" => {
     my $id = param('id'); # gets "bar"
     #  ...
  }
```

## AUTHORS

This module has been written by Alexis Sukrieh and Franck Cuny. See the AUTHORS file that comes with this distribution for details.

## LICENSE

This module is free software and is released under the same terms as Perl itself.

## SEE ALSO

See Dancer for details about the complete framework.

## AUTHOR

Dancer Core Developers

## COPYRIGHT AND LICENSE

This software is copyright (c) 2010 by Alexis Sukrieh.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
