LWP :: UserAgent 6.04,POST和\ n中的新行为作为内容的一部分

时间:2012-03-03 16:12:19

标签: lwp newline lwp-useragent

从较旧的(5.8x?)版本升级到LWP 6.04之后,我注意到在永久运行的分布式应用程序中使用的一些代码开始破坏。我追溯到在POST中处理\ n的更改。

在客户端:

    $post_data{'good'} = qq(This is a text line);
    $post_data{'bad'} = qq(This is a first line\nThis is a second line);

    my $ua = LWP::UserAgent->new();
    my $response = $ua->post( $url, \%post_data );
    return undef if (!defined $response);

在服务器上:

    my $good = $q->param('good');
    my $bad = $q->param('bad');

客户端运行服务器后得到以下内容:

$服务器端的好,因为预期最终是qq(这是一个文本行)。 然而,$ bad最终是qq(这是第一行\ r \ n这是第二行)。

有没有办法避免这种情况"有用"替换而不重写和重新部署利用LWP :: UserAgent先前行为的大量代码?

1 个答案:

答案 0 :(得分:0)