Poco::Net

class HTTPBasicCredentials

File Information

Library: Net
Package: HTTP
Header: Poco/Net/HTTPBasicCredentials.h

Description

This is a utility class for working with HTTP Basic Authentication in HTTPRequest objects.

Member Summary

Member Functions: authenticate, clear, empty, getPassword, getUsername, parseAuthInfo, proxyAuthenticate, setPassword, setUsername

Constructors

HTTPBasicCredentials

HTTPBasicCredentials();

Creates an empty HTTPBasicCredentials object.

HTTPBasicCredentials

explicit HTTPBasicCredentials(
    const HTTPRequest & request
);

Creates a HTTPBasicCredentials object with the authentication information from the given request.

Throws a NotAuthenticatedException if the request does not contain basic authentication information.

HTTPBasicCredentials

explicit HTTPBasicCredentials(
    const std::string & authInfo
);

Creates a HTTPBasicCredentials object with the authentication information in the given string. The authentication information can be extracted from a HTTPRequest object by calling HTTPRequest::getCredentials().

HTTPBasicCredentials

HTTPBasicCredentials(
    const std::string & username,
    const std::string & password
);

Creates a HTTPBasicCredentials object with the given username and password.

Destructor

~HTTPBasicCredentials

~HTTPBasicCredentials();

Destroys the HTTPBasicCredentials.

Member Functions

authenticate

void authenticate(
    HTTPRequest & request
) const;

Adds authentication information to the given HTTPRequest.

clear

void clear();

Clears both username and password.

empty inline

bool empty() const;

Returns true if both username and password are empty, otherwise false.

getPassword inline

const std::string & getPassword() const;

Returns the password.

getUsername inline

const std::string & getUsername() const;

Returns the username.

proxyAuthenticate

void proxyAuthenticate(
    HTTPRequest & request
) const;

Adds proxy authentication information to the given HTTPRequest.

setPassword

void setPassword(
    const std::string & password
);

Sets the password.

setUsername

void setUsername(
    const std::string & username
);

Sets the username.

parseAuthInfo protected

void parseAuthInfo(
    const std::string & authInfo
);

Extracts username and password from Basic authentication info by base64-decoding authInfo and splitting the resulting string at the ':' delimiter.

Variables

SCHEME static

static const std::string SCHEME;