J'utilise dans l'un de mes scripts la lib Net::HTTP::NB et ce de la façon suivante :


Code : Sélectionner tout - Visualiser dans une fenêtre à part
my $conn = eval { Net::HTTP::NB->new(%config)  };
Le problème c'est que l'utiliser ainsi fait qu'il est impossible d'utiliser le pragma keep_alive , j'ai donc revue cette partie de mon programme je l'ai révisé ainsi :

Dans le constructeur de la class

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
$self->{Conn} = new Net::HTTP::NB;
$self->{Conn}->keep_alive($conf{'Alive'} || 150);
puis plus loin dans le code :


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
    $self->{Conn}->host($uri->host);
    $self->{Conn}->peerport($uri->host);
    $self->{Conn}->peeraddr($uri->port);
mais sa ne fonctionne pas perl me renvoie l'erreur :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
Uncaught exception from user code:
	usage: $sock->peerport() at ...
             usage: $sock->peeraddr();