Perl Tutorials - Herong's Tutorial Examples - v6.01, by Dr. Herong Yang
What Is HTTP::Response?
This section describes what is HTTP::Response - a Perl class that represents the HTTP response message returned by a Web server.
As you can see from the LWP::UserAgent class documentation, when you send a HTTP request with get(), post() or request() method, the HTTP response returned from the Web server will be delivered a HTTP::Response object. So we need to learn how to use the HTTP:Response class.
What Is HTTP::Response? HTTP::Response, developed by Gisle Aas, is a Perl class that represents the HTTP response message returned by a Web server. An HTTP response consists of a response line, some headers, and a content body.
The current version of HTTP::Response is 6.04, which supports the following properties and methods:
Now we can do a better test with both LWP::UserAgent and HTTP::Response classes:
herong> perl -e "use LWP::UserAgent; print((new LWP::UserAgent()) ->get('http://herongyang.com')->as_string());" HTTP/1.1 200 OK Connection: close Accept-Ranges: bytes Server: Apache Content-Length: 9869 Content-Type: text/html Client-Response-Num: 1 Link: <_herong.css>; rel="stylesheet"; type="text/css" Title: 30 Programming Tutorial Books and Chinese Calendars X-Meta-Description: A collection of free tutorial books by Herong ... X-Meta-Keywords: Programming, Tutorials, Developer, Books, Free, ... X-Meta-Viewport: width=device-width, initial-scale=1, maximum-scale=1 ... ?<?xml version="1.0"?> <html><head> <title>30 Programming Tutorial Books and Chinese Calendars</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> ...
Very nice, I got my home page content with 2 lines of Perl code!
Table of Contents
Data Types: Values and Variables
Expressions, Operations and Simple Statements
Name Spaces and Perl Module Files
Hard References - Addresses of Memory Objects
Objects (or References) and Classes (or Packages)
Typeglob and Importing Identifiers from Other Packages
String Built-in Functions and Performance
File Handles and Data Input/Output
Open Directories and Read File Names
File System Functions and Operations
Socket Communication Over the Internet
XML::Simple Module - XML Parser and Generator
SOAP::Lite - SOAP Server-Client Communication Module
Perl Programs as IIS Server CGI Scripts
CGI (Common Gateway Interface)
XML-RPC - Remote Procedure Call with XML and HTTP
RPC::XML - Perl Implementation of XML-RPC
Integrating Perl with Apache Web Server
CGI.pm Module for Building Web Pages
►LWP::UserAgent and Web Site Testing
LWP-UserAgent-GET.pl - Sending a GET Request
LWP-UserAgent-GET-Redirect.pl - Following HTTP Redirects
http-equiv="Refresh" Meta Tag not Followed
LWP-UserAgent-POST.pl - Posting Form Data
post() Method not Following Redirect Location
LWP-UserAgent-POST-Redirect.pl - Posting with Redirects
LWP-UserAgent-Request.pl - GET, POST and Cookies
LWP-UserAgent-Request.pl - Login to facebook.com
HTTP::Cookies save() not Saving Temporary Cookies
LWP-UserAgent-Request-Cookies.pl - Sending Request with Cookies
Converting Perl Script to Executable Binary