COucou tout le monde!!
Je chercher à faire un client server en perl en utilisant les socket avec IO::Socket.
J'arrive à faire un genre de client serveur. le problème que j'ai c'est que je n'arrive pas à traiter plusieurs message de mon serveur sur mon client .
Et de même, je n'arrive pas à envoyer de messages de mon client vers mon serveur. est ce que vous pourriez m'aider? merci.
Voilà mon code :
Client :
Serveur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 #!/usr/local/bin/perl # # Client qui emet les messages. # use IO::Socket; $server_addr = "localhost"; $server_port = 30001; $socket = IO::Socket::INET->new(PeerAddr => $server_addr, PeerPort => $server_port, Proto => "tcp", Type =>SOCK_STREAM ) or die "Ne peut pas se connecter au server distant\n"; print $socket "Envoi moi des messages!!!!!\n"; $answer = <$socket>; print $answer; $message=<STDIN>; print $socket $message; close($socket);
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 #!/usr/local/bin/perl # Serveur qui réceptionne sur le port 8888 des messages # qu'il stocke dans un fichier. use IO::Socket; $server_port = 30001; $server = IO::Socket::INET->new(LocalPort=>$server_port, Type=>SOCK_STREAM, Reuse =>1, Listen => 10) or die "Impossibmle de connecter le server sur le port \n"; while($client=$server->accept()){ print $client "what is your name?\n"; chomp($reponse = <$client>); print $reponse; } print $reponse; close($server);
Partager