0
我想在Perl中写一个简单的IO ::套接字连接。但是,我遇到了一些问题。这是在服务器端的代码:问题与IO ::套接字TCP连接
my $listener =
IO::Socket::INET->new(LocalPort => 8000, Listen => 1, Reuse => 1);
die "Can't create socket for listening: $!" unless $listener;
print "Listening for connections on port 8000\n";
while(1) {
while ($client = $listener->accept()) {
while (<$client>) {
my @arguments = split(/ /, $_);
my $result = "something" ;# here we do something in my code
warn $result;
print $client $result;
close $client;
}
}
}
而且客户端代码:
use IO::Socket;
my $sock = new IO::Socket::INET (
PeerAddr => 'xx.xxx.xxx.xxx',
PeerPort => '8000',
Proto => 'tcp',
);
die "Could not create socket: $!\n" unless $sock;
$sock->autoflush(1);
print $sock "somethin something";
print "sent\n";
while (<$sock>) { print }
close $sock;
我现在的问题是,数据似乎当我关闭将只从客户端发送到TEH服务器客户端Perl程序。我在客户端收到“已发送”消息,但在手动关闭客户端之后,服务器端的“某事”消息才会出现。
此外,我想获得服务器响应。到目前为止,因为我必须手动关闭脚本,所以响应不会被客户端所接受。
谁能帮助?
谢谢你,这工作!我无法相信我之前没有找到这些信息......一定是错过了它。 – pyvi 2010-11-23 08:16:35