#include <http.h>
Inheritance diagram for PHTTPClient:

Public Member Functions | |
| PHTTPClient (const PString &userAgentName=PString::Empty()) | |
| Create a new HTTP client channel. | |
| int | ExecuteCommand (Commands cmd, const PURL &url, PMIMEInfo &outMIME, const PString &dataBody, PMIMEInfo &replyMime) |
| Send a command and wait for the response header (including MIME fields). | |
| int | ExecuteCommand (const PString &cmdName, const PURL &url, PMIMEInfo &outMIME, const PString &dataBody, PMIMEInfo &replyMime) |
| PBoolean | WriteCommand (Commands cmd, const PString &url, PMIMEInfo &outMIME, const PString &dataBody) |
| Write a HTTP command to server. | |
| PBoolean | WriteCommand (const PString &cmdName, const PString &url, PMIMEInfo &outMIME, const PString &dataBody) |
| PBoolean | ReadResponse (PMIMEInfo &replyMIME) |
| Read a response from the server. | |
| PBoolean | ReadContentBody (PMIMEInfo &replyMIME, PBYTEArray &body) |
| Read the body of the HTTP command. | |
| PBoolean | ReadContentBody (PMIMEInfo &replyMIME, PString &body) |
| PBoolean | GetTextDocument (const PURL &url, PString &document, const PString &contentType=PString::Empty()) |
| Get the document specified by the URL. | |
| PBoolean | GetDocument (const PURL &url, PMIMEInfo &outMIME, PMIMEInfo &replyMIME) |
| Get the document specified by the URL. | |
| PBoolean | GetHeader (const PURL &url, PMIMEInfo &outMIME, PMIMEInfo &replyMIME) |
| Get the header for the document specified by the URL. | |
| PBoolean | PostData (const PURL &url, PMIMEInfo &outMIME, const PString &data, PMIMEInfo &replyMIME) |
| Post the data specified to the URL. | |
| PBoolean | PostData (const PURL &url, PMIMEInfo &outMIME, const PString &data, PMIMEInfo &replyMIME, PString &replyBody) |
| Post the data specified to the URL. | |
| bool | PutTextDocument (const PURL &url, const PString &document, const PString &contentType="text/plain") |
| Put the document specified by the URL. | |
| bool | PutDocument (const PURL &url, PMIMEInfo &outMIME, PMIMEInfo &replyMIME) |
| Put the document specified by the URL. | |
| bool | DeleteDocument (const PURL &url) |
| Delete the document specified by the URL. | |
| void | SetAuthenticationInfo (const PString &userName, const PString &password) |
| Set authentication paramaters to be use for retreiving documents. | |
| void | SetPersistent (bool persist=true) |
| Set persistent connection mode. | |
| bool | GetPersistent () const |
| Get persistent connection mode. | |
Protected Member Functions | |
| PBoolean | AssureConnect (const PURL &url, PMIMEInfo &outMIME) |
| bool | InternalReadContentBody (PMIMEInfo &replyMIME, PAbstractArray *body) |
Protected Attributes | |
| PString | m_userAgentName |
| bool | m_persist |
| PString | m_userName |
| PString | m_password |
| PHTTPClientAuthentication * | m_authentication |
When acting as a client, the procedure is to make the connection to a remote server, then to retrieve a document using the following procedure:
PHTTPSocket web("webserver");
if (web.IsOpen()) {
PINDEX len;
if (web.GetDocument("http://www.someone.com/somewhere/url", len)) {
PString html = web.ReadString(len);
if (!html.IsEmpty())
ProcessHTML(html);
}
else
PError << "Could not get page." << endl;
}
else
PError << "HTTP conection failed." << endl;
| PHTTPClient::PHTTPClient | ( | const PString & | userAgentName = PString::Empty() |
) |
Create a new HTTP client channel.
| bool PHTTPClient::DeleteDocument | ( | const PURL & | url | ) |
Delete the document specified by the URL.
| url | Universal Resource Locator for document. |
| int PHTTPClient::ExecuteCommand | ( | const PString & | cmdName, | |
| const PURL & | url, | |||
| PMIMEInfo & | outMIME, | |||
| const PString & | dataBody, | |||
| PMIMEInfo & | replyMime | |||
| ) |
| int PHTTPClient::ExecuteCommand | ( | Commands | cmd, | |
| const PURL & | url, | |||
| PMIMEInfo & | outMIME, | |||
| const PString & | dataBody, | |||
| PMIMEInfo & | replyMime | |||
| ) |
Send a command and wait for the response header (including MIME fields).
Note that a body may still be on its way even if lasResponseCode is not 200!
Get the document specified by the URL.
| url | Universal Resource Locator for document. |
| outMIME | MIME info in request |
| replyMIME | MIME info in response |
Get the header for the document specified by the URL.
| url | Universal Resource Locator for document. |
| outMIME | MIME info in request |
| replyMIME | MIME info in response |
| bool PHTTPClient::GetPersistent | ( | ) | const [inline] |
Get persistent connection mode.
| PBoolean PHTTPClient::GetTextDocument | ( | const PURL & | url, | |
| PString & | document, | |||
| const PString & | contentType = PString::Empty() | |||
| ) |
Get the document specified by the URL.
An empty string for the contentType parameter means that any content type is acceptable.
| url | Universal Resource Locator for document. |
| document | Body read |
| contentType | Content-Type header to expect |
| bool PHTTPClient::InternalReadContentBody | ( | PMIMEInfo & | replyMIME, | |
| PAbstractArray * | body | |||
| ) | [protected] |
| PBoolean PHTTPClient::PostData | ( | const PURL & | url, | |
| PMIMEInfo & | outMIME, | |||
| const PString & | data, | |||
| PMIMEInfo & | replyMIME, | |||
| PString & | replyBody | |||
| ) |
Post the data specified to the URL.
| url | Universal Resource Locator for document. |
| outMIME | MIME info in request |
| data | Information posted to the HTTP server. |
| replyMIME | MIME info in response |
| replyBody | Body of response |
| PBoolean PHTTPClient::PostData | ( | const PURL & | url, | |
| PMIMEInfo & | outMIME, | |||
| const PString & | data, | |||
| PMIMEInfo & | replyMIME | |||
| ) |
Post the data specified to the URL.
| url | Universal Resource Locator for document. |
| outMIME | MIME info in request |
| data | Information posted to the HTTP server. |
| replyMIME | MIME info in response |
Put the document specified by the URL.
| url | Universal Resource Locator for document. |
| outMIME | MIME info in request |
| replyMIME | MIME info in response |
| bool PHTTPClient::PutTextDocument | ( | const PURL & | url, | |
| const PString & | document, | |||
| const PString & | contentType = "text/plain" | |||
| ) |
Put the document specified by the URL.
| url | Universal Resource Locator for document. |
| document | Body read |
| contentType | Content-Type header to use |
| PBoolean PHTTPClient::ReadContentBody | ( | PMIMEInfo & | replyMIME, | |
| PBYTEArray & | body | |||
| ) |
Read the body of the HTTP command.
Set authentication paramaters to be use for retreiving documents.
| void PHTTPClient::SetPersistent | ( | bool | persist = true |
) | [inline] |
Set persistent connection mode.
| PBoolean PHTTPClient::WriteCommand | ( | const PString & | cmdName, | |
| const PString & | url, | |||
| PMIMEInfo & | outMIME, | |||
| const PString & | dataBody | |||
| ) |
| PBoolean PHTTPClient::WriteCommand | ( | Commands | cmd, | |
| const PString & | url, | |||
| PMIMEInfo & | outMIME, | |||
| const PString & | dataBody | |||
| ) |
Write a HTTP command to server.
PHTTPClientAuthentication* PHTTPClient::m_authentication [protected] |
PString PHTTPClient::m_password [protected] |
bool PHTTPClient::m_persist [protected] |
PString PHTTPClient::m_userAgentName [protected] |
PString PHTTPClient::m_userName [protected] |
1.4.7