【问题标题】:How can I find the final URL after all redirections in Perl?在 Perl 中进行所有重定向后如何找到最终 URL?
【发布时间】:2011-01-01 21:27:54
【问题描述】:

假设我有“http://www.ritzcarlton.com”,这会将我重定向到“http://www.ritzcarlton.com/en/Default.htm”。 Perl 有没有办法在所有重定向之后找到结束 url?

【问题讨论】:

    标签: perl url redirect


    【解决方案1】:

    使用 LWP 将为您遵循重定向。然后,您可以查询 HTTP::Request 对象以找出它请求的 URI。

    use LWP::UserAgent qw();
    
    my $ua = LWP::UserAgent->new;
    
    my $response = $ua->get('http://www.ritzcarlton.com');
    
    print $response->request->uri . "\n";
    

    输出是:

    http://www.ritzcarlton.com/en/Default.htm

    【讨论】:

      【解决方案2】:

      如果您自己发出 HTTP 请求,则重定向 URL 将位于返回的 Location: 标头中。如果您使用正确的 HTTP 客户端,如 LWP::UserAgentWWW::Mechanize,这是您应该做的,重定向会自动处理。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-02-22
        • 1970-01-01
        • 1970-01-01
        • 2015-09-08
        • 1970-01-01
        • 2020-07-24
        • 1970-01-01
        • 2013-02-24
        相关资源
        最近更新 更多