`

perl http模块总结

    博客分类:
  • perl
阅读更多
perl发送http请求主要有 LWP,UserAgent, HTTP这些模块及其子模块组成
 
1.发送简单的http请求
只需要使用LWP::Simple模块即可
use LWP::Simple;
$content = get(url);  #返回得到的内容

getstore(url, filename);#将目标url的内容保存到filename中
head($url);   返回5个响应头($content_type, $document_length, $modified_time, $expires, $server)
 
这个模块的方法只能做一些基本的http请求操作,比如只能发送get请求,获取不到响应的详细信息
 
2.发送通用的http请求
这里用到3个主要的类
LWP::UserAgent,   HTTP::Request,  HTTP::Response,
需要注意的是 后面2个类继承HTTP::Headers和 HTTP::Message, HTTP::Headers 提供了添加请求头,获取响应头的方法。 HTTP::Message提供了content方法,对于request对象,如果request是post请求,则该方法会设置http的请求内容; 对于response对象该方法会返回http响应的内容
 
标准的请求过程
$response = $ua->request($request);
 
在执行此方法之前可以对request对象进行设置, 方法执行完后
可以从response对象中获取内容,响应头等
 
UserAgent可以设置一些s全局选项, 比如timeout,max_redirect
 
下面是一个完整的例子
use LWP::UserAgent;
use HTTP::Request;
use HTTP::Response;
 
$ua = LWP::UserAgent->new(timeout=>180);
$request = HTTP::Request->new('POST'=>"http://mysite.com?name=john");
$request ->content_type('application/x-www-form-urlencoded');#post 必须有这句
$request->content('age=18');#post 请求参数
$request->header('Accept-Language', 'zh-CN,zh;q=0.8');
$response = $ua->request($request);
print $response->content();
print $response->status_line();
print $response->header('Content-Type');
 
 
总结:
通过使用 LWP::UserAgent,   HTTP::Request,  HTTP::Response, 这三个类可以满足发起大多数http请求,
还有一些类用于更方便的发送请求。
 

 

0
2
分享到:
评论

相关推荐

    mod_perl Perl模块

    描述"mod_perl Apache的Perl模块"进一步强调了mod_perl是专门为Apache HTTP服务器设计的一个模块,它通过内嵌Perl解释器来优化Perl应用程序的执行,避免了CGI每次请求时启动新进程的开销,从而提升了整体系统性能。...

    Linux上安装Perl模块方法介绍

    ### Linux上安装Perl模块方法详解 #### 一、引言 在Linux环境下处理大量数据时,Perl语言因其强大的文本处理能力和脚本编写能力而被广泛采用。然而,要充分利用Perl的强大功能,安装必要的Perl模块至关重要。本文...

    perl-HTTP-Server-Simple

    总结来说,Perl-HTTP-Server-Simple是Perl开发者的一个强大工具,它简化了HTTP服务器的创建,适用于快速原型开发、本地测试或者作为更复杂服务器架构的一部分。通过深入学习和实践,你可以利用这个扩展包轻松构建...

    Perl编程思想.pdf

    ### Perl编程思想知识点总结 #### 一、CGI技术 **1.1 什么是CGI?** CGI(Common Gateway Interface)是一种标准协议,用于在Web服务器与外部应用程序之间进行通信。通过CGI,Web服务器可以接收来自客户端的HTTP...

    Perl 常见问题集

    - CPAN(Comprehensive Perl Archive Network)是一个非常重要的资源,包含了大量Perl模块和文档。Perl.com和Perl.org也是获取最新资讯的好地方。 #### 八、Perl编程技巧 - **如何优化Perl程序性能?** - 可以...

    perl 打包程序安装

    wget http://www.cpan.org/src/5.0/perl-5.10.1.tar.gz # 解压文件 tar xzvf perl-5.10.1.tar.gz # 进入目录 cd perl-5.10.1/ # 配置编译选项 sh Configure -de # 编译 make # 测试编译结果 make ...

    Programming Perl中文版

    #### 五、总结 “Programming Perl中文版”不仅适合初学者作为入门指南,对于有一定基础的开发者来说,也是深入理解和提高Perl编程技能的宝贵资源。通过本书的学习,你可以掌握Perl语言的核心概念,并学会如何利用...

    CGI-Perl实例起步

    总结,CGI-Perl实例起步是一个逐步学习和实践CGI编程的过程,通过分析和执行给出的Perl脚本,我们可以了解CGI程序的工作原理,掌握如何利用Perl处理HTTP请求,生成动态网页,并最终提升Web开发能力。在这个过程中,...

    ds_perl_gs

    总结来说,“ds_perl_gs”是一个Perl编程的学习资源,特别适合想要了解Perl如何应用于服务器开发的初学者。通过研究源代码和实践运行,不仅可以学习到Perl的基本语法和网络编程,还可以了解到如何构建一个简单的...

    Nginx+perl的web框架(Npweb )

    总结来说,Nginx+Perl的Web框架(Npweb)结合了Nginx的高性能和Perl的灵活性,为开发者提供了一个高效且可定制化的Web开发环境。通过深入理解Nginx的工作原理和Perl的编程特性,可以利用Npweb构建出满足各种需求的...

    ActivePerl v5.26.1-x64.zip

    总结来说,ActivePerl v5.26.1-x64是Windows环境下开发和运行Perl脚本的理想工具,尤其适合于CGI应用程序开发和与OpenSSL的协作。其强大的功能、易用性和广泛的社区支持,使得Perl成为Windows系统管理和Web开发领域...

    Perl命令行参数

    perl -MLWP::Simple -e 'getstore("http://www.example.com/", "output.txt")' ``` 这条命令将网页内容下载并保存到 `output.txt` 文件中。 ##### 3. `-I` 指定目录以搜索模块 - **用途**:告诉 Perl 解释器在...

    高级Perl编程(黑豹书)+学习手札

    而《Perl_学习手札》可能是一本个人学习笔记或者实践总结,它可能包含作者在学习Perl过程中的心得、常见问题解决方案和实际项目经验。这样的书籍通常更具实战性,能够帮助读者在解决实际问题时找到灵感。 通过结合...

    生物信息学perl教程

    首先,需要下载并安装Perl解释器,推荐使用StrawberryPerl或ActivePerl,两者均可从官方网站`http://www.perl.org/get.html`获取。安装过程一般选择默认设置即可。接下来,配置代码编辑器,DzSoftPerlEditor是一款...

    perl编程指南 perl编程指南

    总结来说,Perl编程指南旨在帮助初学者快速入门并精通Perl,无论你是系统管理员、网页开发者还是数据处理专家,都能从这本指南中受益。通过深入学习和实践,你将能够利用Perl的强大功能,解决日常工作中遇到的各种...

    Perl 24 小时自学通(PDF).rar

    Perl,全称Practical ...总结来说,"Perl 24 小时自学通"是一本全面介绍Perl编程的教程,通过实例教学,帮助读者在短时间内掌握Perl的基本知识和高级技巧。对于想要快速入门Perl的初学者,这是一份非常有价值的资源。

Global site tag (gtag.js) - Google Analytics