Gee die proxy-handler aan BigQuery se PHP-REST- en auth-hakke
Vir google/cloud-bigquery 1.39.3, gee dieselfde callable aan httpHandler en authHttpHandler wanneer albei paaie die tussenganger nodig het.
Die REST-aflewering- en tokenversoek-hakke in google/cloud-bigquery 1.39.3 kan 'n proxy-bewuste PSR-versoekhandler deel:
$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,
]);Die callable stel Guzzle se proxy-opsie op elke versoek, insluitend 'n publieke HTTP-eindpunt wat uit die HTTP-proxylys gekies word, en die konstruktor gee daardie callable aan beide httpHandler en authHttpHandler. Dit dek REST-aflewering en die verifikasieversoeke wat daardie hak gebruik. Behou die ondersteunde geloofsbrief-opstelling; 'n geloofsbrief wat 'n ander transport besit, vereis dat daardie transport ook ondersoek word.
Voeg vereiste direkte uitsonderings by via Guzzle se ondersteunde proxy-konfigurasie. Hou die BigQuery API-eindpunt as die diensbestemming: om 'n proxy-adres in apiEndpoint te plaas, kies 'n ander diens eerder as om hierdie roete te konfigureer.
Dit is BigQueryClient-konstruktoropsies. Hulle konfigureer nie 'n onafhanklike gRPC-kanaal nie en stem nie ooreen met Google\Client se setHttpClient-koppelvlak in die afsonderlike Google API PHP Client-biblioteek nie.