Den REST- und Auth-Hooks von BigQuery PHP den Proxy-Handler geben
Für google/cloud-bigquery 1.39.3 dasselbe Callable an httpHandler und authHttpHandler übergeben, wenn beide Pfade den Vermittler brauchen.
Die Hooks für REST-Auslieferung und Token-Anfragen in google/cloud-bigquery 1.39.3 können einen proxyfähigen PSR-Request-Handler gemeinsam nutzen:
$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,
]);Das Callable setzt bei jeder Anfrage Guzzles Proxy-Option, auch für einen öffentlichen HTTP-Endpunkt aus der HTTP-Proxy-Liste, und der Konstruktor übergibt dieses Callable sowohl an httpHandler als auch an authHttpHandler. Damit sind die REST-Auslieferung und die Auth-Anfragen über diesen Hook abgedeckt. Behalten Sie die unterstützte Credential-Einrichtung bei; ein Credential mit einem anderen Transport verlangt, dass auch dieser Transport geprüft wird.
Ergänzen Sie nötige direkte Ausnahmen über Guzzles unterstützte Proxy-Konfiguration. Behalten Sie den BigQuery-API-Endpunkt als Dienstziel bei: Eine Proxy-Adresse in apiEndpoint wählt einen anderen Dienst, statt diese Route zu konfigurieren.
Das sind Konstruktoroptionen von BigQueryClient. Sie konfigurieren weder einen eigenständigen gRPC-Kanal noch entsprechen sie bei Google\Client der setHttpClient-Schnittstelle in der separaten Bibliothek Google API PHP Client.