📜  perl http 请求 - Perl (1)

📅  最后修改于: 2023-12-03 14:45:07.480000             🧑  作者: Mango

Perl HTTP 请求

简介

Perl是一种适用于文本处理的脚本语言,其在网络通信方面也得到了广泛应用。Perl提供了HTTP::Request模块,可以方便地发送HTTP请求。

HTTP::Request模块

HTTP::Request模块是Perl核心模块之一,它提供了构造和发送HTTP请求的接口。该模块支持GET、POST等多种请求方式,并且可以设置请求头、请求体等参数。

安装

该模块为Perl核心模块,无需安装。

基本使用

发送GET请求

use LWP::UserAgent;

my $ua = LWP::UserAgent->new;

my $url = "http://www.example.com";
my $req = HTTP::Request->new(GET => $url);

my $resp = $ua->request($req);
if ($resp->is_success) {
    print $resp->decoded_content;
}
else {
    print $resp->status_line, "\n";
}

发送POST请求

use LWP::UserAgent;

my $ua = LWP::UserAgent->new;

my $url = "http://www.example.com";
my $params = { name => 'John', age => 30 };
my $req = HTTP::Request->new(POST => $url);
$req->header('Content-Type' => 'application/x-www-form-urlencoded');
$req->content(join('&', map { "$_=$params->{$_}" } keys %{$params}));

my $resp = $ua->request($req);
if ($resp->is_success) {
    print $resp->decoded_content;
}
else {
    print $resp->status_line, "\n";
}
更多用法

HTTP::Request模块还支持设置cookie、代理、用户名、密码等请求参数,具体用法可参考官方文档 HTTP::Request

总结

Perl提供了方便的HTTP请求模块,可以帮助我们快速构建各种网络通信应用。掌握该模块的使用方法,将有助于提高我们的工作效率。