Accueil   |   Forums   |  Offres d'emplois   |  Contact    |   Mon compte   
samedi 17 mai 2008 Rechercher :
Déposez votre CV gratuitement sur touslesemplois
 
comparer les prix
» Logiciels
» Jeux vidéos
» Matériel Informatique


» ASP.NET
» ASP
» SQL
» PHP
» JAVASCRIPT
» XML
 


» ACTUALITÉ / DIVERS
» DROIT DE L'INTERNET
» INFOS VIRUS
» PATCHS MICROSOFT
» SÉCURITÉ
» BASES DE DONNÉES
» DOWNLOAD .NET
» LOGITHÈQUE
» SERVICES WEB
» Y SONT FOUS !
» .NET
» ASP
» ASP.NET
» JAVA
» PHP
» XML
» LANGAGE C#
» LANGAGE VB.NET
» UNIX / LINUX
» WINDOWS
» EVÈNEMENTS
» GASP
» MICROSOFT
 



Vous êtes ici : Articles ASP > TRUCS ET ASTUCES

Client HTTP en perlscript et ASP
Pour pouvoir appeler une url directement dans un script ASP et en récupérer le résultat, il faut d'habitude disposer d'un composant ActiveX fonctionnant en général avec Winsock.


ABONNEZ-VOUS GRATUITEMENT A LA REVUE DE PRESSE "LES Z'ACTUS" ET RECEVEZ CHAQUE JOUR DANS VOTRE BOITE AUX LETTRES LA MEILLEURE INFORMATION DEDIEE AUX WEBMASTERS / DEVELOPPEURS.

Indiquez votre adresse E-mail :

Technologie : ASP 
Date : 29/05/2006   
Auteur : Sébastien CRAMATTE
Je vous propose ici de vous expliquer brièvement comment effectuer le même travail à l'aide de perlscript et d'ASP.

Même s'il est vrai que l'utilisation d'un composant ActiveX serveur est plus sécurisé et plus rapide vous serez confronter à quelques problèmes ...

Vous avez besoin d'effectuer des requêtes http dans vos scripts, à ce moment là plusieurs solutions s'offre à vous à savoir :
  • - Vous disposez de votre propre serveur et vous avez le contrôle administrateur afin de pouvoir installer un DLL http gratuite au moyen d'un " regsvr32 [madll.dll] "

  • - Vous pouvez acheter un composant http qui à fait ces preuves (serverObject,...) si votre hébergeur est d'accord pour vous l'installer sur une machine mutualisée .

  • - Active perl est installé sur votre serveur et à ce moment là, vous pouvez ouvrir le port http directement dans votre page ASP au moyen de quelques lignes de codes.
    C'est cette dernière solution que je vais tenter de vous exposer ici.

Prérequis : 

Votre serveur doit disposer d'active Perl 5.x ou supérieur et de la librairie LWP.

Explication : 

Ce code n'est pas exhaustif. Je ne l'ai pas crée.
Il s'agit simplement d'une adaptation au perlscript et à l'ASP d'un script que l'on peut trouver partout sur le net.

Le code : 

<script language="perlscript" runat="server">
use LWP::UserAgent; # librairie client HTTP 

# function ErrorRepport(errMsg)
# fonction de gestion des erreurs

sub ErrorReport {
my ($errMsg) = @_;
$Response->Write($errMsg);
$Response->end;
}

# function geturl(myrul)

# il s'agit de la fonction principale qui permet d'éxecuter votre requête HTTP de type get
sub geturl {
my ($myurl) = @_; # récupère dans la variable $myurl l'url passée en paramètre de l'appel de la fonction geturl 
my $returnString=""; # initialise la variable de retour à vide

$ua = new LWP::UserAgent or die ErrorReport("Impossible de créer le client"); # création du client HTTP 
$ua->agent("$0/0.1 " . $ua->agent); # déclaration de l'agent utilisateur 
$ua->agent("Mozilla/8.0"); # déclaration d'un agent utilisateur particulierement evolué de type Mozilla

$req = new HTTP::Request 'GET' => "$myurl"; # éxecute la requête HTTP en get
$req->header('Accept' => 'text/html'); # defini le format de l'entête

$res = $ua->request($req); # affecte le resultat de la requête http dans la variable $res

if ($res->is_success) { 
# le résultat est correct 
$returnString.=$res->content;
}
else {
# il y a une erreur
ErrorReport("Impossible de récuperer l'URL spécifiée");
}

$returnString; # renvoie le résultat sous forme de chaîne de caractère 
}

</script>
<http>
<head>
<title>Client http en perlscript et ASP</title>
</head>
<body>
<!-- Appel de la fonction getURL -->
<%=geturl("http://www.asp-magazine.com")%>
</body>
</html>

Idées :

A priori il est tout a fait possible d'effectuer toutes les requêtes http que l'on désire par la méthode POST/GET en SSL ou non, sur tous les types de fichiers (image,html,texte,...) .

Références :

Quelques explications sur LWP
http://www.linpro.no/lwp/libwww-perl/lwpcook.pod

Web Client Programming with Perl
http://www.oreilly.com/catalog/webclient/

Le site de l'activePerl
http://www.activestate.com

Téléchargement

PerlScript_asp.zip



Project Hoshimi


A RETENIR CETTE SEMAINE
16/05/2008 - Logiciels Microsoft gratuits pour les étudiants
Vous êtes étudiant ? N’attendez pas pour télécharger* gratuitement et utiliser les derniers logiciel ...
16/05/2008 - Lillois, ne manquez pas les Wygdays 2008
Le 22 mai prochain à Lille, vous êtes invité à un événement unique dédié aux développeurs, organisé ...
16/05/2008 - Flash 10 est dans les bacs, Silverlight prend du retard
On est peut-être à un tournant très important de la bataille que se livrent Microsoft et Adobe sur l ...
15/05/2008 - Comment manipuler simplement le contenu d'un fichier WordML ?
Le format WordML (et plus largement OpenXML ) est une grande avancée: il permet de manipuler les doc ...
15/05/2008 - Package d'installation réseau de Windows XP Service Pack 3 pour les informaticiens
Ce package d'installation est destiné à permettre aux informaticiens et aux développeurs de configur ...
15/05/2008 - Mono supporte désormais Windows Forms et Silverlight
Jour de gloire pour le projet Mono. Miguel de Icaza annonce tout d'abord sur son blog la première re ...
14/05/2008 - Deux Services Packs en bêta pour Visual Studio
Microsoft annonce deux Services Packs en version bêta pour Visual Studio 2008 et pour le framework . ...
(c) 1999-2006 ASP MAGAZINE SARL
Partenaires : Codes sources c2i ASP-PHP
Hébergement serveurs dédiés Windows


Hit-Parade