Perl Tutorials - Herong's Tutorial Examples - v6.01, by Dr. Herong Yang
What Is HTTP::Cookies?
This section describes what is HTTP::Cookies - a Perl class that helps you to extra cookies from HTTP::Response objects, store them and attach them to HTTP::Request objects.
From the previous tutorial, we learned that some Web applications requires us to attach cookies in our HTTP request. To do this, we need to look at the HTTP::Cookies class.
What Is HTTP::Cookies? HTTP::Cookies, developed by Gisle Aas, is a Perl class that helps you to extra cookies from HTTP::Response objects, store them and attach them to HTTP::Request objects. Cookies are a general mechanism which server side connections can use to both store and retrieve information on the client side of the connection.
The current version of HTTP::Cookies is 6.01, which supports the following main properties and methods:
Here is my test program, HTTP-Cookies-Test.pl:
#- HTTP-Cookies-Test.pl #- Copyright (c) HerongYang.com. All Rights Reserved. use HTTP::Cookies; my ($key, $value, $domain) = @ARGV; $key = 'sid' unless $key; $value = 'WFwRU9CG' unless $value; $domain = '.herongyang.com' unless $domain; my $jar = HTTP::Cookies->new(); $jar->load('HTTP-Cookies.jar'); $jar->set_cookie(0, $key, $value, '/', $domain); $jar->save('HTTP-Cookies.jar'); print($jar->as_string()); exit;
I tested it and it worked ok. Here is my test result:
herong> hTTP-Cookies-Test.pl Set-Cookie3: sid=WFwRU9CG; path="/"; domain=.herongyang.com; version=0 herong> hTTP-Cookies-Test.pl user Herong .google.com Set-Cookie3: user=Herong; path="/"; domain=.google.com; version=0 Set-Cookie3: sid=WFwRU9CG; path="/"; domain=.herongyang.com; version=0
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