సంఖ్యాత్మక 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 ప్రాక్సీని ఆశిస్తుంది; ప్రాక్సీని transport మద్దతిచ్చే పద్ధతికి సరిపోల్చండి.

CURLOPT_PROXYAUTH మధ్యవర్తి ప్రమాణీకరణను ఎంచుకుంటుంది. CURLOPT_HTTPAUTH మరియు API అనుమతి బదులుగా గమ్యస్థానానికి సేవ చేస్తాయి.

Yii2 యొక్క భాగస్వామ్య అభ్యర్థన ఎంపికలు, కేస్-సెన్సిటివ్ ప్రాక్సీ మరియు సమయ పరిమితులతో సహా, మరో ఇంటర్‌ఫేస్. అవి ఏకపక్ష cURL స్థిరాంకాలను బ్యాకెండ్‌ల మధ్య తరలించగలిగేలా చేయవు.

Client.requestConfig నిలిచి ఉండాల్సిన డిఫాల్ట్‌లను అందిస్తే, ప్రతి అభ్యర్థనకు చేర్పుల కోసం addOptions ఉపయోగించండి. చూపిన setOptions ఆ సేకరణను భర్తీ చేస్తుంది మరియు వారసత్వంగా వచ్చిన ఎంపికలను తొలగించగలదు.

సంబంధిత వ్యాసాలు