Mojolicious::Plugin::HeaderCondition - Header condition plugin
# Mojolicious
$app->plugin('HeaderCondition');
$app->routes->get('/foo')->requires(headers => {Referer => qr/example\.com/});
# Mojolicious::Lite
plugin 'HeaderCondition';
get '/' => (headers => {Referer => qr/example\.com/}) => sub {...};
# All headers need to match
$app->routes->get('/foo')->requires(headers => {
'X-Secret-Header' => 'Foo',
Referer => qr/example\.com/
});
# The "agent" condition is a shortcut for the "User-Agent" header
get '/' => (agent => qr/Firefox/) => sub {...};
# The "host" condition is a shortcut for the detected host
get '/' => (host => qr/mojolicious\.org/) => sub {...};
Mojolicious::Plugin::HeaderCondition is a route condition for header-based routes.
This is a core plugin, that means it is always enabled and its code a good example for learning to build new plugins, you're welcome to fork it.
See "PLUGINS" in Mojolicious::Plugins for a list of plugins that are available by default.
Mojolicious::Plugin::HeaderCondition inherits all methods from Mojolicious::Plugin and implements the following new ones.
$plugin->register(Mojolicious->new);
Register conditions in Mojolicious application.