Hooky pro doručování REST a pro požadavky na token v google/cloud-bigquery 1.39.3 mohou sdílet PSR handler požadavků, který zná proxy:

$proxy = 'http://proxy.example:8080';
$http = new \GuzzleHttp\Client();
$send = static function (
    \Psr\Http\Message\RequestInterface $request,
    array $options = []
) use ($http, $proxy) {
    $options['proxy'] = $proxy;
    return $http->send($request, $options);
};

$bigQuery = new \Google\Cloud\BigQuery\BigQueryClient([
    'projectId' => $projectId,
    'httpHandler' => $send,
    'authHttpHandler' => $send,
]);

Callable při každém požadavku nastaví volbu proxy v Guzzle, včetně veřejného HTTP endpointu vybraného ze seznamu HTTP proxy, a konstruktor předá tento callable jak httpHandler, tak authHttpHandler. To pokrývá doručování REST i požadavky na ověření, které tento hook používají. Zachovejte podporované nastavení přihlašovacích údajů; údaje, které vlastní jiný transport, vyžadují prozkoumání i tohoto transportu.

Přidejte potřebné přímé výjimky přes podporovanou konfiguraci proxy v Guzzle. Ponechte endpoint BigQuery API jako cíl služby: umístění adresy proxy do apiEndpoint vybírá jinou službu, místo aby konfigurovalo tuto trasu.

Toto jsou volby konstruktoru BigQueryClient. Nenastavují nezávislý kanál gRPC ani neodpovídají v Google\Client rozhraní setHttpClient v samostatné knihovně Google API PHP Client.

Související články