HTTP::Request::Common man page on BSDi

Man page or keyword search:  
man Server   6284 pages
apropos Keyword Search (all sections)
Output format
BSDi logo
[printable version]



lib::HTTP::RequUser:Contributed Perllib::HTTP::Request::Common(3)

NAME
       HTTP::Request::Common - Construct common HTTP::Request
       objects

SYNOPSIS
	 use HTTP::Request::Common;
	 $ua = LWP::UserAgent->new;
	 $ua->request(GET 'http://www.sn.no/');
	 $ua->request(POST 'http://somewhere/foo', [foo => bar, bar => foo]);

DESCRIPTION
       This module provide functions that return newly created
       HTTP::Request objects.  These functions are usually more
       convenient than the standard HTTP::Request constructor for
       these common requests.  The following functions are
       provided.

       GET $url, [Header => Value,...]
	   The GET() function returns a HTTP::Request object
	   initialized with the GET method and the specified URL.
	   Without additional arguments it is exactly equivalent
	   to the following call

	     HTTP::Request->new(GET => $url)

	   but is less clutter.	 It also reads better when used
	   together with the LWP::UserAgent->request() method:

	     my $ua = new LWP::UserAgent;
	     my $res = $ua->request(GET 'http://www.sn.no')
	     if ($res->is_success) { ...

	   You can also initialize the header values in the
	   request by specifying some key/value pairs as optional
	   arguments.  For instance:

	     $ua->request(GET 'http://www.sn.no',
			      If_Match => 'foo',
			      From     => 'gisle@aas.no',
			 );

	   A header key called 'Content' is special and when seen
	   the value will initialize the content part of the
	   request instead of setting a header.

       HEAD $url, [Header => Value,...]
	   Like GET() but the method in the request is HEAD.

       PUT $url, [Header => Value,...]
	   Like GET() but the method in the request is PUT.

       POST $url, [$form_ref], [Header => Value,...]
	   This works mostly like GET() with POST as method, but

24/Aug/1997	       perl 5.005, patch 03			1

lib::HTTP::RequUser:Contributed Perllib::HTTP::Request::Common(3)

	   this function also takes a second optional array
	   reference parameter ($form_ref).  This argument can be
	   used to pass key/value pairs for the form content.  By
	   default we will initialize a request using the
	   application/x-www-form-urlencoded content type.  This
	   means that you can emulate a HTML <form> POSTing like
	   this:

	     POST 'http://www.perl.org/survey.cgi',
		  [ name  => 'Gisle',
		    email => 'gisle@aas.no',
		    gender => 'm',
		    born   => '1964',
		    trust  => '3%',
		   ];

	   This will create a HTTP::Request object that looks
	   like this:

	     POST http://www.perl.org/survey.cgi
	     Content-Length: 61
	     Content-Type: application/x-www-form-urlencoded

	     name=Gisle&email=gisle%40aas.no&gender=m&born=1964&trust=3%25

	   The POST method also supports the multipart/form-data
	   content used for Form-based File Upload as specified
	   in RFC 1867.	 You trigger this content format by
	   specifying a content type of 'form-data'.  If one of
	   the values in the $form_ref is an array reference,
	   then it is treated as a file part specification with
	   the following values:

	     [ $file, $filename, Header => Value... ]

	   The first value in the array ($file) is the name of a
	   file to open.  This file will be read an its content
	   placed in the request.  The routine will croak if the
	   file can't be opened.  Use an undef as $file value if
	   you want to specify the content directly.  The
	   $filename is the filename to report in the request.
	   If this value is undefined, then the basename of the
	   $file will be used.	You can specify an empty string
	   as $filename if you don't want any filename in the
	   request.

	   Sending my ~/.profile to the survey used as example
	   above can be achieved by this:

24/Aug/1997	       perl 5.005, patch 03			2

lib::HTTP::RequUser:Contributed Perllib::HTTP::Request::Common(3)

	     POST 'http://www.perl.org/survey.cgi',
		  Content_Type => 'form-data',
		  Content      => [ name  => 'Gisle Aas',
				    email => 'gisle@aas.no',
				    gender => 'm',
				    born   => '1964',
				    init   => ["$ENV{HOME}/.profile"],
				  ]

	   This will create a HTTP::Request object that almost
	   looks this (the boundary and the content of your
	   ~/.profile is likely to be different):

	     POST http://www.perl.org/survey.cgi
	     Content-Length: 388
	     Content-Type: multipart/form-data; boundary="6G+f"

	     --6G+f
	     Content-Disposition: form-data; name="name"

	     Gisle Aas
	     --6G+f
	     Content-Disposition: form-data; name="email"

	     gisle@aas.no
	     --6G+f
	     Content-Disposition: form-data; name="gender"

	     m
	     --6G+f
	     Content-Disposition: form-data; name="born"

	     1964
	     --6G+f
	     Content-Disposition: form-data; name="init"; filename=".profile"
	     Content-Type: text/plain

	     PATH=/local/perl/bin:$PATH
	     export PATH

	     --6G+f--

SEE ALSO
       the HTTP::Request manpage, the LWP::UserAgent manpage

COPYRIGHT
       Copyright 1997, Gisle Aas

       This library is free software; you can redistribute it
       and/or modify it under the same terms as Perl itself.

24/Aug/1997	       perl 5.005, patch 03			3

lib::HTTP::RequUser:Contributed Perllib::HTTP::Request::Common(3)

24/Aug/1997	       perl 5.005, patch 03			4

[top]

List of man pages available for BSDi

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net