WC_Helper_API::_authenticate()private staticWC 1.0

Adds authentication headers to an HTTP request.

Метод класса: WC_Helper_API{}

Хуков нет.

Возвращает

true|false. Were the headers added?

Использование

$result = WC_Helper_API::_authenticate( $url, $args );
$url(строка) (обязательный) (передается по ссылке — &)
The request URI.
$args(массив) (обязательный) (передается по ссылке — &)
By-ref, the args that will be passed to wp_remote_request().

Код WC_Helper_API::_authenticate() WC 9.4.2

private static function _authenticate( &$url, &$args ) {
	$auth = WC_Helper_Options::get( 'auth' );

	if ( empty( $auth['access_token'] ) || empty( $auth['access_token_secret'] ) ) {
		return false;
	}

	$signature = self::create_request_signature(
		(string) $auth['access_token_secret'],
		$url,
		! empty( $args['method'] ) ? $args['method'] : 'GET',
		$args['body'] ?? null
	);

	if ( empty( $args['headers'] ) ) {
		$args['headers'] = array();
	}

	$headers         = array(
		'Authorization'   => 'Bearer ' . $auth['access_token'],
		'X-Woo-Signature' => $signature,
	);
	$args['headers'] = wp_parse_args( $headers, $args['headers'] );

	$url = add_query_arg(
		array(
			'token'     => $auth['access_token'],
			'signature' => $signature,
		),
		$url
	);

	return true;
}