我需要使用压缩数据创建一个 HTTP::Response。如何使内容压缩?我是否只是添加适当的标头并使用 Compress::Zlib 自己压缩它?或者是否有任何 LWP 模块提供处理此问题的方法?
问问题
4019 次
1 回答
2
这是你需要的吗?您 gzip 数据,设置 Content-encoding 标头,然后将其发送出去。
use strict;
use warnings;
use HTTP::Response;
use IO::Compress::Gzip qw(gzip);
my $data = q(My cat's name is Buster);
my $gzipped_data;
my $gzip = gzip \$data => \$gzipped_data;
print STDERR $gzipped_data;
my $response = HTTP::Response->new;
$response->code( 200 );
$response->header( 'Content-type' => 'text/plain' );
$response->header( 'Content-encoding' => 'gzip' );
$response->header( 'Content-length' => length $gzipped_data );
$response->content( $gzipped_data );
print $response->as_string;
于 2011-08-10T13:00:34.623 回答