google/cloud-bigquery 1.39.3 ичиндеги REST жеткирүү жана token суроо илмектери проксини тааныган PSR суроо handler'ин бөлүшө алат:

$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 ар бир суроодо Guzzle'дун proxy опциясын коёт, анын ичинде HTTP proxy тизмесинен тандалган ачык HTTP endpoint, ал эми конструктор ошол callable'ды httpHandler жана authHttpHandler экөөнө тең берет. Бул REST жеткирүүнү жана ошол илмекти колдонгон аутентификация суроолорун камтыйт. Колдоого алынган credential жөндөөсүн сактаңыз; башка transport'у бар credential үчүн ошол transport'ту да текшерүү керек.

Керектүү түз өзгөчөлүктөрдү Guzzle'дун колдоого алынган proxy конфигурациясы аркылуу кошуңуз. BigQuery API endpoint'ин кызматтын багыты катары кармаңыз: apiEndpoint ичине proxy дарегин коюу бул маршрутту конфигурациялоонун ордуна башка кызматты тандайт.

Булар BigQueryClient конструкторунун опциялары. Алар көз карандысыз gRPC каналын конфигурациялабайт жана өзүнчө Google API PHP Client китепканасындагы Google\Client setHttpClient интерфейсине да туура келбейт.

Тектеш макалалар