/ Forside / Teknologi / Udvikling / Perl / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Perl
#NavnPoint
bjarneA 141
poul_from 50
soccer 30
Nicknack 14
Tmpj 0
Script i remote host...
Fra : John Doe


Dato : 12-12-00 15:40

Jeg vil gerne lave et script som sender data til et andet script i en anden
host og returnere responsen... Altså jeg vil f.eks sende et IP nummer til
ripe.net, hente responsen og skrive det på skærmen.. Jeg har gjort følgende:

#!/usr/local/bin/perl

use LWP::Simple;

$IP = '194.123.456';
&info();

sub info{
$ripe_URL =
'http://www.ripe.net/cgi-bin/whois?query=$IP&.submit=Send+foresp%F8rgsel';
$new_URL = get("$ripe_URL");

print "Content-type: text/html\n\n";
print $new_URL;
}

Når jeg kører den får jeg en blank side. jeg har prøvet forskellige ting.
Bl.a. skifte ' med " og omvendt. kan nogen se hvad der er galt? Er det
forkert at bruge LWP:Simple eller er det mig der har misforstået brugen af
det? Er der andre måde at gør det på?



 
 
Trond Michelsen (12-12-2000)
Kommentar
Fra : Trond Michelsen


Dato : 12-12-00 16:34


"John Doe" <fatih@ofir.dk> wrote in message
news:XMqZ5.10779$72.163619@twister.sunsite.auc.dk...
> Jeg vil gerne lave et script som sender data til et andet script i en
anden
> host og returnere responsen... Altså jeg vil f.eks sende et IP nummer
til
> ripe.net, hente responsen og skrive det på skærmen.. Jeg har gjort
følgende:
>
> #!/usr/local/bin/perl
> use LWP::Simple;
> $IP = '194.123.456';
> &info();
> sub info{
> $ripe_URL =
>
'http://www.ripe.net/cgi-bin/whois?query=$IP&.submit=Send+foresp%F8rgsel
';
> $new_URL = get("$ripe_URL");
> print "Content-type: text/html\n\n";
> print $new_URL;
> }

> Når jeg kører den får jeg en blank side. jeg har prøvet forskellige
ting.
> Bl.a. skifte ' med " og omvendt. kan nogen se hvad der er galt? Er det
> forkert at bruge LWP:Simple eller er det mig der har misforstået
brugen af
> det? Er der andre måde at gør det på?

Vel.. Du må bruke "" for at $IP skal interpoleres i $ripe_URL, men du
skal allikevel få et resultat. Er du sikker på at webserververen kan
kalle opp eksterne websiter? Det kan jo hende at det er satt opp en
sperre på nettverket et sted.

Anyway, det kan være lurt å bruke LWP::UserAgent for å finne ut hva som
egentlig skjer med requesten.

-------------8<------------------
#!/usr/local/bin/perl -w

use strict;
use LWP::UserAgent;
use HTTP::Request::Common qw(POST);

my $IP = '194.123.456';
my $ripe_URL = 'http://www.ripe.net/cgi-bin/whois';

my $ua = new LWP::UserAgent;
my $res = $ua->request(POST $ripe_URL, [query => $IP]);

print "Content-type: text/html\n\n";
if ($res->is_success) {
print $res->content;
} else {
print "Failed: ", $res->status_line;
}
-------------8<------------------

--
Trond Michelsen








John Doe (12-12-2000)
Kommentar
Fra : John Doe


Dato : 12-12-00 16:53

Hmm, det virker som det skal. Tak for hjælpen.

>-------------8<------------------
>#!/usr/local/bin/perl -w
>
>use strict;
>use LWP::UserAgent;
>use HTTP::Request::Common qw(POST);
>
>my $IP = '194.123.456';
>my $ripe_URL = 'http://www.ripe.net/cgi-bin/whois';
>
>my $ua = new LWP::UserAgent;
>my $res = $ua->request(POST $ripe_URL, [query => $IP]);
>
>print "Content-type: text/html\n\n";
>if ($res->is_success) {
> print $res->content;
>} else {
> print "Failed: ", $res->status_line;
>}
>-------------8<------------------




Søg
Reklame
Statistik
Spørgsmål : 177547
Tips : 31968
Nyheder : 719565
Indlæg : 6408797
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste