Застрял на использовании Net :: HTTP, когда я создаю объект Net :: HTTP, он инициализируется с "IO :: Socket :: IP".Как я могу изменить сокет по умолчанию без жесткого кодирования?Я хотел бы изменить его на IO :: Socket :: INET.
Так что, если у меня жесткий сокет, он работает.Но когда я пытаюсь использовать Coro :: LWP и Coro :: LWP изменяет IO :: Socket :: INET на Coro :: Socket, я получаю ошибку:
Сбой чтения состояния: конечная точка транспорта не подключена вperl5 / lib / perl5 / Net / HTTP / Methods.pm строка 282.
Мне нужно изменить сокет, потому что модуль Clickhouse на cpan не поддерживает асинхронные запросы.
вот код, который нене работает
use IO::Socket::INET qw( );
BEGIN { $Net::HTTP::SOCKET_CLASS = 'IO::Socket::INET'; };
use Coro::LWP;
my $s = Net::HTTP->new(Host => "www.perl.com") || die $@;
$s->write_request(GET => "/");
print $_ for ( $s->read_response_headers );
исправлено!просто измените Coro :: Socket на Coro :: PatchSet :: Socket