NAME
Catalyst::Plugin::Compress - Compress response
SYNOPSIS
use Catalyst qw/Compress/;
or (Catalyst pre Unicode Merge, and If you want to use this plugin with Catalyst::Plugin::Unicode.)
use Catalyst qw/
Unicode
Compress
/;
or (Catalyst 5.90080 and later)
use Catalyst qw/
Compress
/;
Remember to specify compression_format with:
__PACKAGE__->config(
compression_format => $format,
);
$format can be either gzip bzip2 zlib or deflate. bzip2 is *only* supported by lynx and some other console text-browsers.
DESCRIPTION
This module combines Catalyst::Plugin::Deflate Catalyst::Plugin::Gzip Catalyst::Plugin::Zlib into one.
It compress response to [gzip bzip2 zlib deflate] if client supports it. In other works the client should send the Accept-Encoding HTTP header with a supported compression like 'gzip'.
NOTE: If you are using an older version of Catalyst that requires the Unicode plugin and if you want to use this module with Catalyst::Plugin::Unicode, You MUST load this plugin AFTER Catalyst::Plugin::Unicode.
use Catalyst qw/
Unicode
Compress
/;
If you don't, You'll get error which is like:
[error] Caught exception in engine "Wide character in subroutine entry at /usr/lib/perl5/site_perl/5.8.8/Compress/Zlib.pm line xxx."
If you upgrade to any version of Catalyst 5.90080+ the unicode support has been integrated into core code and this plugin is designed to work with that.
INTERNAL METHODS
should_compress_response
This method determine wether compressing the reponse using this plugin.
SEE ALSO
AUTHOR
Yiyi Hu yiyihu@gmail.com
LICENSE
This library is free software. You can redistribute it and/or modify it under the same terms as perl itself.