---
name: "POE::Component::Client::HTTP::Request"
section: "3pm"
platform: "linux"
package: "perl-poe-component-client-http"
version: "0.949-13"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/POE::Component::Client::HTTP::Request"
---

# POE::Component::Client::HTTP::Request(3pm)

an HTTP request class

## NAME

POE::Component::Client::HTTP::Request - an HTTP request class

## VERSION

version 0.949

## SYNOPSIS

```
  # Used internally by POE::Component::Client::HTTP
```

## DESCRIPTION

POE::Component::Client::HTTP::Request encapsulates the state of requests POE::Component::Client::HTTP requests throughout their life cycles.  There turns out to be a lot of state to manage.

## CONSTRUCTOR

### new NAMED\_PARAMETERS

Create a POE::Component::Client::HTTP object to manage a request.  The constructor takes several named parameters:

- Request =\> HTTP\_REQUEST

  A POE::Component::Client::HTTP::Request object encapsulates a plain HTTP::Request.  Required.

- Factory =\> POE\_COMPONENT\_CLIENT\_HTTP\_REQUESTFACTORY

  The request may create additional requests during its lifetime, for example when following redirects.  The Factory parameter specifies the POE::Component::Client::HTTP::RequestFactory that may be used to create them.  Required.

- Postback =\> RESPONSE\_POSTBACK

  POE::Component::Client::HTTP creates a postback that will be used to send responses to the requesting session.  Required.

- Progress =\> PROGRESS\_POSTBACK

  Sets the progress notification if the user has requested progress events.  Optional.

- Proxy

  Sets the proxy used for this request, if requested by the user. Optional.

## METHODS

### ID

Return the request's unique ID.

### return\_response

Sends a response back to the user's session.  Called by POE::Component::Client::HTTP when a complete response has arrived.

### add\_eof

Called by POE::Component::Client::HTTP to indicate EOF has arrived.

### add\_content PARSED\_DATA

Called by POE::Component::Client::HTTP to add content data to an incrementally built response.  If PARSED\_DATA is an object, it is treated like an HTTP::Headers object and its headers are assimilated into the response being built by the request.  Otherwise the PARSED\_DATA is appended to the response's content.

### timer TIMER

Accessor to manipulate the request's timeout timer.  Sets the request's timer if TIMER is specified, otherwise merely fetches the one currently associated with the request.

### create\_timer TIMEOUT

Creates and sets a timer for this request.  TIMEOUT is the number of seconds this request may live.

### remove\_timeout

Turn off the timer associated with this request, and discard it.

### postback POSTBACK

Accessor to manipulate the postback associated with this request. Sets the postback if POSTBACK is defined, otherwise merely fetches it.

### does\_redirect SOMETHING

FIXME - Not sure what this accessor does.

### check\_redirect

Check whether the last response is a redirect, the request is permitted to follow redirects, and the maximum number of redirects has not been met.  Initiate a redirect if all conditions are favorable.

### close\_connection

Each active request object contains an internal connection.  This method closes it.

### send\_to\_wheel

Transmit the request to the socket associated with this request.

### wheel

An accessor to return the wheel associated with this request.

### error ERROR\_CODE, ERROR\_MESSAGE

Generate an error response, and post it back to the user's session.

### connect\_error CONNECT\_FAILURE\_MESSAGE

Generate a connection error response, and post it back to the user's session.

### host

Return the host this request is attempting to work with.

### port

Return the port this request is attempting to work with.

### scheme

Return the scheme for this request.

## SEE ALSO

POE::Component::Client::HTTP POE

## BUGS

None are currently known.

## AUTHOR & COPYRIGHTS

POE::Component::Client::HTTP::Request is

- •

  Copyright 2004-2005 Martijn van Beers

- •

  Copyright 2006 Rocco Caputo

All rights are reserved.  POE::Component::Client::HTTP::Request is free software; you may redistribute it and/or modify it under the same terms as Perl itself.

## CONTRIBUTORS

Your name could be here.

## CONTACT

Rocco may be contacted by e-mail via \<mailto:rcaputo@cpan.org\>, and Martijn may be contacted by email via \<mailto:martijn@cpan.org\>.

The preferred way to report bugs or requests is through RT though. See \<http://rt.cpan.org/NoAuth/Bugs.html?Dist=POE-Component-Client-HTTP\> or mail \<mailto:bug-POE-Component-Client-HTTP@rt.cpan.org\>

For questions, try the POE mailing list (poe@perl.org)
