为什么IO :: Socket总是超时?

时间:2018-10-05 01:49:57

标签: perl

每当我尝试与perl Socket连接时,都会超时...像这样的代码:

#!/usr/bin/perl
use v5.26;
use IO::Socket;


my $sock = IO::Socket::INET->new(PeerAddr=> 'www.google.com',
                             PeerPort => 'http(80)',
                             Proto    => 'tcp') or die $!;

my $line = <$sock>;
say $line;

谁能告诉我为什么...

1 个答案:

答案 0 :(得分:3)

在与Web服务器的对话中,用户代理首先讲话。您尚未发送请求。服务器等待您发送请求,然后放弃。如果您要发出网络请求,则Mojo::UserAgent之类的工作将为您完成大部分工作。

还要意识到,某些主机对您可能是明智的。最好在本地测试这种东西。