• 热门专题

Perl Socket网络编程实现本地端口发送与监听

作者:光阴过客  发布日期:2012-11-12 10:25:39
Tag标签:Perl  Socket网络编程  
  • 用Perl写的一个C/S模式的:

    client端向本机端口消息发送消息,
    server端监听本机端口,接收并响应client发送的消息。
    也可以说是两进程间的socket通信。


    实现很简单,但能稳定而良好地工作,
    稍作改造,加些功能后,能用在很多类似需要C/S工作模式的场合。


    server端代码:


    #! /usr/bin/perl
    
    ###############################################################################
    # \File 
    # tcp_server.pl
    # \Descript
    # listen to local port
    ############################################################################### 
    use IO::Socket::INET;
    
    # 5277为监听端口 
    my $sock_listen = IO::Socket::INET->new(
          LocalHost => '127.0.0.1',
          LocalPort => 5277,
          Proto => 'tcp',
          Listen => 3,
          Reuse => 1,)
    or die "no socket: $!";
     while(1)
     {
      my $sock_recv = $sock_listen->accept();
      while ($data = <$sock_recv>)
      {
        print $data,"\n";
      }
    
      close $sock_listen; 
    }
    
    

    client端代码:www.it165.net
     

    #! /usr/bin/perl
    
    ###############################################################################
    # \File
    # tcp_client.pl
    # \Descript
    # send message to server
    ###############################################################################
    
    use IO::Socket::INET;
    
    my $sock_connect = IO::Socket::INET->new('127.0.0.1:5277');
    die "Socket could not be created. Because$!\n" unless $sock_connect;
    
    my $msg = "Hello, server.";
    $sock_connect->print($msg);
    close $sock_connect;
    
    

    测试通过;

About IT165 - 广告服务 - 隐私声明 - 版权申明 - 免责条款 - 网站地图 - 网友投稿 - 联系方式
本站内容来自于互联网,仅供用于网络技术学习,学习中请遵循相关法律法规