संख्यात्मक CURLOPT विकल्पहरू पठाउनु अघि CurlTransport छान्नुहोस्। Yii2 को HTTP क्लाइन्टले पूर्वनिर्धारित रूपमा StreamTransport प्रयोग गर्छ र ती स्थिरांकहरू हुँदाहुँदै मात्र cURL बन्दैन:

$client = new \yii\httpclient\Client([
    'transport' => \yii\httpclient\CurlTransport::class,
]);

$response = $client->createRequest()
    ->setMethod('GET')
    ->setUrl('https://api.example/items')
    ->setOptions([
        CURLOPT_PROXY => 'http://proxy.example:8080',
        CURLOPT_PROXYAUTH => CURLAUTH_BASIC,
        CURLOPT_PROXYUSERNAME => $proxyUser,
        CURLOPT_PROXYPASSWORD => $proxyPassword,
        CURLOPT_CONNECTTIMEOUT => 5,
        CURLOPT_TIMEOUT => 15,
    ])
    ->send();

cURL एक्सटेन्सन सहितको PHP रनटाइम प्रयोग गर्नुहोस्। यो उदाहरणले Basic स्वीकार गर्ने HTTP प्रोक्सी अपेक्षा गर्छ; प्रोक्सीलाई ट्रान्सपोर्टले समर्थन गर्ने विधिसँग मिलाउनुहोस्।

CURLOPT_PROXYAUTH ले मध्यस्थ प्रमाणीकरण छान्छ। CURLOPT_HTTPAUTH र API अनुमतिले भने गन्तव्यलाई सेवा गर्छन्।

Yii2 का साझा अनुरोध विकल्पहरू, केस-संवेदी प्रोक्सी र समयसीमा सहित, अर्को इन्टरफेस हुन्। तिनले जथाभावी cURL स्थिरांकहरूलाई ब्याकएन्डहरूबीच सार्न योग्य बनाउँदैनन्।

यदि Client.requestConfig ले टिकिरहनुपर्ने पूर्वनिर्धारित मानहरू दिन्छ भने, प्रति-अनुरोध थपका लागि addOptions प्रयोग गर्नुहोस्। देखाइएको setOptions ले त्यो सङ्ग्रह प्रतिस्थापन गर्छ र उत्तराधिकारमा प्राप्त विकल्पहरू हटाउन सक्छ।

सम्बन्धित लेखहरू