Mojo :: useragent Ошибка SSL - PullRequest
       18

Mojo :: useragent Ошибка SSL

0 голосов
/ 11 декабря 2018

Я использую Mojo :: Useragent для извлечения некоторого сайта за прокси-сервером, который определен с использованием HTTP_PROXY и HTTPS_PROXY

под примером кода:

my $rs = $ua->insecure(1)->get($mysite) 
if($rs->res->is_success) {
    .....
} else {
    print "Problem with fetching $mysite \n";
    print $rs->res->error->{message};
}

Я получаю эту ошибку:

Ошибка попытки подключения SSL: 14077419: подпрограммы SSL: SSL23_GET_SERVER_HELLO: доступ к предупреждению tlsv1 запрещен

Когда я использую curl на той же машине, я получаю результатыкак и ожидалось.

Есть идеи, как решить эту проблему?

1 Ответ

0 голосов
/ 11 декабря 2018

Сформируйте ошибку SSL, похоже, ваша сеть активно отказывается пропустить вас.

Определение переменных среды HTTP_PROXY и HTTPS_PROXY - это нормально, однако вы должны указать Mojo :: UserAgent использовать их (в отличие отcURL, который автоматически ищет их по умолчанию).

Добавьте эту строку в код перед запуском запроса:

$ua->proxy->detect;

См. Mojo :: UserAgent :: Proxyдокументация .

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

$ua->proxy
      ->http('http://127.0.0.1:8080')
      ->https('http://127.0.0.1:8080');
...