dwww Home | Manual pages | Find package

Mojolicious::Types(3pmUser Contributed Perl DocumentatiMojolicious::Types(3pm)

NAME
       Mojolicious::Types - MIME types

SYNOPSIS
         use Mojolicious::Types;

         my $types = Mojolicious::Types->new;
         $types->type(foo => 'text/foo');
         say $types->type('foo');

DESCRIPTION
       Mojolicious::Types manages MIME types for Mojolicious.

         appcache -> text/cache-manifest
         atom     -> application/atom+xml
         bin      -> application/octet-stream
         css      -> text/css
         gif      -> image/gif
         gz       -> application/x-gzip
         htm      -> text/html
         html     -> text/html;charset=UTF-8
         ico      -> image/x-icon
         jpeg     -> image/jpeg
         jpg      -> image/jpeg
         js       -> application/javascript
         json     -> application/json;charset=UTF-8
         mp3      -> audio/mpeg
         mp4      -> video/mp4
         ogg      -> audio/ogg
         ogv      -> video/ogg
         pdf      -> application/pdf
         png      -> image/png
         rss      -> application/rss+xml
         svg      -> image/svg+xml
         ttf      -> font/ttf
         txt      -> text/plain;charset=UTF-8
         webm     -> video/webm
         woff     -> font/woff
         woff2    -> font/woff2
         xml      -> application/xml,text/xml
         zip      -> application/zip

       The most common ones are already defined.

ATTRIBUTES
       Mojolicious::Types implements the following attributes.

   mapping
         my $mapping = $types->mapping;
         $types      = $types->mapping({png => ['image/png']});

       MIME type mapping.

METHODS
       Mojolicious::Types inherits all methods from Mojo::Base and implements
       the following new ones.

   content_type
         $types->content_type(Mojolicious::Controller->new, {ext => 'json'});

       Detect MIME type for Mojolicious::Controller object unless a
       "Content-Type" response header has already been set, defaults to using
       "application/octet-stream" if no better alternative could be found.
       These options are currently available:

       ext
           ext => 'json'

         File extension to get MIME type for.

       file
           file => 'foo/bar.png'

         File path to get MIME type for.

   detect
         my $exts = $types->detect('text/html, application/json;q=9');

       Detect file extensions from "Accept" header value.

         # List detected extensions prioritized
         say for @{$types->detect('application/json, text/xml;q=0.1', 1)};

   file_type
         my $type = $types->file_type('foo/bar.png');

       Get MIME type for file path.

   type
         my $type = $types->type('png');
         $types   = $types->type(png => 'image/png');
         $types   = $types->type(json => ['application/json', 'text/x-json']);

       Get or set MIME types for file extension, alternatives are only used
       for detection.

SEE ALSO
       Mojolicious, Mojolicious::Guides, <https://mojolicious.org>.

perl v5.36.0                      2022-12-22           Mojolicious::Types(3pm)

Generated by dwww version 1.15 on Tue Jun 25 09:11:30 CEST 2024.