Дайце REST- і auth-хукам BigQuery PHP proxy-апрацоўнік
Для google/cloud-bigquery 1.39.3 перадайце адзін і той жа callable у httpHandler і authHttpHandler, калі абодва шляхі патрабуюць пасярэдніка.
Хукі REST-дастаўкі і запыту токена ў google/cloud-bigquery 1.39.3 могуць выкарыстоўваць агульны PSR-апрацоўнік запытаў, які ўлічвае 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 прызначае опцыю proxy Guzzle для кожнага запыту, уключаючы публічны HTTP-эндпойнт, выбраны са спіса HTTP-proxy, а канструктар перадае гэты callable як httpHandler, так і authHttpHandler. Гэта пакрывае REST-дастаўку і запыты аўтэнтыфікацыі, якія выкарыстоўваюць гэты хук. Захавайце падтрымліваную наладку ўліковых даных; уліковыя даныя з іншым транспартам патрабуюць праверкі і гэтага транспарту.
Дадайце неабходныя прамыя выключэнні праз падтрымліваную канфігурацыю proxy у Guzzle. Пакіньце эндпойнт BigQuery API як месца прызначэння сэрвісу: размяшчэнне адраса proxy у apiEndpoint выбірае іншы сэрвіс, а не наладжвае гэты маршрут.
Гэта опцыі канструктара BigQueryClient. Яны не наладжваюць незалежны канал gRPC і не адпавядаюць у Google\Client інтэрфейсу setHttpClient з асобнай бібліятэкі Google API PHP Client.