Testez l'application | Télécharger les sources |
Grâce à une page HTML, l'utilisateur aura la possibilité
de :
![]() |
|
![]() |
|
![]() |
|
![]() |
NIVEAU | URL/EMAIL | RESULTAT |
Après la saisie des divers paramètres dans la page HTML par
l'utilisateur et soumission du formulaire, une méthode permet de
récupérer l'ensemble de ce formulaire. Un traitement différent
est alors aplliqué suivant le type d'adresse saisie : URL ou adresse
Email.
Si l'URL est une image (gif, jpeg, ....), on crée alors un socket en nous connectant à la machine hôte sur le port 80. Dès que la connexion est établie, on exécute la commande HEAD $path HTTP/1.0 ($path étant le chemin de l'image) qui nous retourne entête sous la forme d'une chaine de caractères (il n'est pas nécessaire en effet d'ouvrir l'image pour recupérer son corps). L'entête du document nous permet de connaitre le code de retour (image trouvée, image non valide ...).
Si une URL est déclarée non valide, elle est retestée
autant de fois que l'utilisateur l'a desiré.
Suivant le type de sortie désirée, le résultat est
affiché dans une page HTML sous forme de tableau, ou bien un mail
est envoyé à l'utilisateur.
Certaines URL sont transformées , notamment dans les cas suivants :
* adresse relative contenue dans un document : on rajoute alors la racine
du document
ex : /images/fond.gif dans la page http://www.essi.fr/~vuillaum/index.html
-> http://www.essi.fr/~vuillaum/images/fond.gif
* adresse sur une page personnel : on rajoute un slash '/' pour que le
fichier index.html soit parsé
ex : http://www.essi.fr/~vuillaum -> http://www.essi.fr/~vuillaum/
Codes de retour pour une URL :
0,"Invalid
URL"
-1,"Could Not Look Up Server" -2,"Could Not Open Socket" -3,"Could Not Bind Socket" -4,"Could Not Connect" 200,"OK" 201,"Created" 202,"Accepted" 203,"Partial Information" 204,"No Response" 301,"Found, But Moved" 302,"Found, But Data Resides Under a Different URL" 303,"Method" 304,"Not Modified" 400,"Bad Request" 401,"Unauthorized" 402,"Payment Required" 403,"Forbidden" 404,"Not Found" 408,"Timeout" 500,"Internal Error" 501,"Not Implemented" 502,"Service Temporarily Overloaded" 503,"Gateway Timeout" 600,"Bad Request" 601,"Not Implemented" 602,"Connection Failed" 603,"Timed Out" |
Si une adresse Email est déclarée non valide, elle est retestée autant de fois que l'utilisateur l'a desiré.
Il est a noter que la vérification de mail ne peut s'effectuer que sur des adresses internes à l'ESSI.
Codes de retour pour une adresse Email :
250,"E-mail OK",
251,"User Not Local, Will Forward", 450,"Mailbox Unavailable", 451,"Error In Processing", 452,"Insufficient System Storage", 550,"User Unknown", 551,"User Not Local", 552,"Exceeded Storage Allocation", 553,"Mailbox Name Not Allowed", 554,"Transaction Failed"); |