Requests_Auth_Basic WordPress Class
The Requests_Auth_Basic class is a WordPress class used to authenticate with an HTTP server using the Basic authentication method. This method is the simplest of the three authentication methods supported by the HTTP protocol, and is typically used for accessing resources that do not require a higher level of security.
Requests_Auth_Basic #
Basic Authentication provider
Contents
Description
Provides a handler for Basic HTTP authentication via the Authorization header.
Source
File: wp-includes/Requests/Auth/Basic.php
class Requests_Auth_Basic implements Requests_Auth { /** * Username * * @var string */ public $user; /** * Password * * @var string */ public $pass; /** * Constructor * * @throws Requests_Exception On incorrect number of arguments (`authbasicbadargs`) * @param array|null $args Array of user and password. Must have exactly two elements */ public function __construct($args = null) { if (is_array($args)) { if (count($args) !== 2) { throw new Requests_Exception('Invalid number of arguments', 'authbasicbadargs'); } list($this->user, $this->pass) = $args; } } /** * Register the necessary callbacks * * @see curl_before_send * @see fsockopen_header * @param Requests_Hooks $hooks Hook system */ public function register(Requests_Hooks $hooks) { $hooks->register('curl.before_send', array($this, 'curl_before_send')); $hooks->register('fsockopen.after_headers', array($this, 'fsockopen_header')); } /** * Set cURL parameters before the data is sent * * @param resource $handle cURL resource */ public function curl_before_send(&$handle) { curl_setopt($handle, CURLOPT_HTTPAUTH, CURLAUTH_BASIC); curl_setopt($handle, CURLOPT_USERPWD, $this->getAuthString()); } /** * Add extra headers to the request before sending * * @param string $out HTTP header string */ public function fsockopen_header(&$out) { $out .= sprintf("Authorization: Basic %s\r\n", base64_encode($this->getAuthString())); } /** * Get the authentication string (user:pass) * * @return string */ public function getAuthString() { return $this->user . ':' . $this->pass; } }
Expand full source codeCollapse full source codeView on TracView on GitHub
Methods
- __construct— Constructor
- curl_before_send— Set cURL parameters before the data is sent
- fsockopen_header— Add extra headers to the request before sending
- getAuthString— Get the authentication string (user:pass)
- register— Register the necessary callbacks