Как я могу добавить прокси с IP / портом и именем пользователя / паролем в CurlHttpClient на Symfony HttpClient Component? - PullRequest
0 голосов
/ 05 июня 2019

Я использую Symfony HttpClient Component, возникла необходимость использовать его с прокси. Откройте прокси с портом, я могу легко настроить конфигурацию по умолчанию при создании экземпляра класса CurlHttpClient, но я не могу установить имя пользователя и пароль для частного прокси

Пример конфигурации по умолчанию:

use Symfony\Component\HttpClient\CurlHttpClient;

$httpClient = new CurlHttpClient([
    'http_version' => '2.0',
    'proxy' => 'x.xx.xxx.xxx:8000',
]);

Я пытаюсь добавить дополнительную конфигурацию для дополнительных параметров и пробую другие комбинации, но не могу найти правильный путь.

с простым PHP и cURL все работает нормально.

Пожалуйста, помогите мне, настройте компонент Symfony HttpClient с частным прокси.

Ответы [ 2 ]

0 голосов
/ 06 июня 2019

Я нашел решение, данные для прокси должны быть указаны в следующем формате:

$httpClient = new CurlHttpClient([
    'http_version' => '2.0',
    'proxy' => 'user:password@ip:port',
]);

это хорошо

0 голосов
/ 06 июня 2019

Вам необходимо указать протокол (например, socks5, socks4 и т. Д.)

use Symfony\Component\HttpClient\CurlHttpClient;

$httpClient = new CurlHttpClient([
    'http_version' => '2.0',
    'proxy' => 'socks5://username:password@127.0.0.1:9999',
]);

dump($httpClient->request('GET', 'https://api.ipify.org?format=json')->getContent());
...