Ρύθμιση διαμεσολαβητή στο CurlTransport του Yii2
Επιλέξτε CurlTransport πριν περάσετε τα CURLOPT_PROXY και τις επιλογές ελέγχου ταυτότητας διαμεσολαβητή σε αίτημα HTTP client του Yii2.
Επιλέξτε CurlTransport πριν περάσετε αριθμητικές επιλογές CURLOPT. Ο HTTP client του Yii2 χρησιμοποιεί από προεπιλογή 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();Χρησιμοποιήστε περιβάλλον PHP με την επέκταση cURL. Το παράδειγμα περιμένει διαμεσολαβητή HTTP που δέχεται Basic· προσαρμόστε τον διαμεσολαβητή στη μέθοδο που υποστηρίζει το transport.
Το CURLOPT_PROXYAUTH επιλέγει τον έλεγχο ταυτότητας του μεσάζοντα. Τα CURLOPT_HTTPAUTH και η εξουσιοδότηση API εξυπηρετούν αντ' αυτού τον προορισμό.
Οι κοινές επιλογές αιτημάτων του Yii2, μαζί με τον διαμεσολαβητή που διακρίνει πεζά-κεφαλαία και τα χρονικά όρια, είναι άλλο interface. Δεν κάνουν αυθαίρετες σταθερές cURL φορητές μεταξύ backends.
Αν το Client.requestConfig παρέχει προεπιλογές που πρέπει να διατηρηθούν, χρησιμοποιήστε το addOptions για προσθήκες ανά αίτημα. Το setOptions που φαίνεται αντικαθιστά αυτή τη συλλογή και μπορεί να αφαιρέσει κληρονομημένες επιλογές.