Mojolicious::Types(3pm) | User Contributed Perl Documentation | Mojolicious::Types(3pm) |
Mojolicious::Types - MIME types
use Mojolicious::Types; my $types = Mojolicious::Types->new; $types->type(foo => 'text/foo'); say $types->type('foo');
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.
Mojolicious::Types implements the following attributes.
my $mapping = $types->mapping; $types = $types->mapping({png => ['image/png']});
MIME type mapping.
Mojolicious::Types inherits all methods from Mojo::Base and implements the following new ones.
$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:
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)};
my $type = $types->file_type('foo/bar.png');
Get MIME type for file path.
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.
Mojolicious, Mojolicious::Guides, <https://mojolicious.org>.
2022-12-22 | perl v5.36.0 |