Topik ini menjelaskan cara mengonfigurasi proxy di SDK untuk PHP V1.0.
Catatan
Urutan prioritas metode untuk mengonfigurasi proxy adalah sebagai berikut: ajukan permintaan, gunakan klien, dan konfigurasikan variabel lingkungan.
Ajukan permintaan untuk mengonfigurasi proxy.
<?php require_once 'vendor/autoload.php'; use AlibabaCloud\Client\AlibabaCloud; use AlibabaCloud\Client\Exception\ClientException; use AlibabaCloud\Client\Exception\ServerException; use AlibabaCloud\Ecs\Ecs; try { // Pastikan variabel lingkungan ALIBABA_CLOUD_ACCESS_KEY_ID dan ALIBABA_CLOUD_ACCESS_KEY_SECRET dikonfigurasi. AlibabaCloud::accessKeyClient(getenv('ALIBABA_CLOUD_ACCESS_KEY_ID'), getenv('ALIBABA_CLOUD_ACCESS_KEY_SECRET')); $request = Ecs::v20140526()->describeRegions(); $result = $request ->version('2014-05-26') ->product('Ecs') ->action('DescribeRegions') ->regionId('cn-hangzhou') ->host("ecs.cn-hangzhou.aliyuncs.com") ->scheme("http") // Jika Anda menyetel parameter proxy ke https, atur parameter skema ke https. Jika Anda menyetel parameter proxy ke http atau tidak, atur skema ke http. Jika tidak, proxy tidak akan berlaku. ->options([ 'proxy' => [ 'http' => 'http://localhost:8080', // Gunakan proxy ini dengan "http" // 'https' => 'http://localhost:9124', // Gunakan proxy ini dengan "https", // 'no' => ['example.com'] // Jangan gunakan proxy dengan ini ] ]) ->request(); print_r($result->toArray()); } catch (ClientException $exception) { // Tangani pengecualian dengan hati-hati dalam skenario bisnis nyata dan jangan pernah abaikan pengecualian dalam proyek Anda. Dalam contoh ini, informasi ditampilkan hanya untuk referensi. echo $exception->getMessage() . PHP_EOL; } catch (ServerException $exception) { // Tangani pengecualian dengan hati-hati dalam skenario bisnis nyata dan jangan pernah abaikan pengecualian dalam proyek Anda. Dalam contoh ini, informasi ditampilkan hanya untuk referensi. echo $exception->getMessage() . PHP_EOL; echo $exception->getErrorCode() . PHP_EOL; echo $exception->getRequestId() . PHP_EOL; echo $exception->getErrorMessage() . PHP_EOL; }Gunakan klien untuk mengonfigurasi proxy.
<?php require_once 'vendor/autoload.php'; use AlibabaCloud\Client\AlibabaCloud; use AlibabaCloud\Client\Exception\ClientException; use AlibabaCloud\Client\Exception\ServerException; use AlibabaCloud\Ecs\Ecs; try { // Pastikan variabel lingkungan ALIBABA_CLOUD_ACCESS_KEY_ID dan ALIBABA_CLOUD_ACCESS_KEY_SECRET dikonfigurasi. AlibabaCloud::accessKeyClient(getenv('ALIBABA_CLOUD_ACCESS_KEY_ID'), getenv('ALIBABA_CLOUD_ACCESS_KEY_SECRET')) ->asDefaultClient() ->options([ 'proxy' => [ 'http' => 'http://localhost:8080', // Gunakan proxy ini dengan "http" // 'https' => 'http://localhost:9124', // Gunakan proxy ini dengan "https", // 'no' => ['localhost'] // Jangan gunakan proxy dengan ini ] ]); $request = Ecs::v20140526()->describeRegions(); $result = $request ->version('2014-05-26') ->product('Ecs') ->action('DescribeRegions') ->regionId('cn-hangzhou') ->host("ecs.cn-hangzhou.aliyuncs.com") ->scheme("http") // Jika Anda menyetel parameter proxy ke https, atur parameter skema ke https. Jika Anda menyetel parameter proxy ke http atau tidak, atur skema ke http. Jika tidak, proxy tidak akan berlaku. ->request(); print_r($result->toArray()); } catch (ClientException $exception) { // Tangani pengecualian dengan hati-hati dalam skenario bisnis nyata dan jangan pernah abaikan pengecualian dalam proyek Anda. Dalam contoh ini, informasi ditampilkan hanya untuk referensi. echo $exception->getMessage() . PHP_EOL; } catch (ServerException $exception) { // Tangani pengecualian dengan hati-hati dalam skenario bisnis nyata dan jangan pernah abaikan pengecualian dalam proyek Anda. Dalam contoh ini, informasi ditampilkan hanya untuk referensi. echo $exception->getMessage() . PHP_EOL; echo $exception->getErrorCode() . PHP_EOL; echo $exception->getRequestId() . PHP_EOL; echo $exception->getErrorMessage() . PHP_EOL; }Konfigurasikan variabel lingkungan untuk mengatur proxy.
HTTP_PROXY atau http_proxy
HTTPS_PROXY atau https_proxy
NO_PROXY atau no_proxy