Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1335 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  [C++] Checker si une adresse web est valide???

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[C++] Checker si une adresse web est valide???

n°1270224
le_duc
PlaTyPuS
Posté le 19-12-2005 à 20:03:55  profilanswer
 

yop yop!
 
y'a pas moyen de savoir facilement si une adresse web est valide??
 
merci pour votre réponse.
 
@++

mood
Publicité
Posté le 19-12-2005 à 20:03:55  profilanswer
 

n°1270242
theshockwa​ve
I work at a firm named Koslow
Posté le 19-12-2005 à 20:30:12  profilanswer
 

faire une requête HTTP dessus et regarder ce que le serveur te retourne (si le serveur lui-même est accessible, biensur)

n°1270490
le_duc
PlaTyPuS
Posté le 20-12-2005 à 09:50:11  profilanswer
 

et comment qu'on fait ca? j'ai encore pas trouvé d'info dessus...
 
thx, ++

n°1270559
theshockwa​ve
I work at a firm named Koslow
Posté le 20-12-2005 à 11:11:01  profilanswer
 

ben, ouvertures de socket en mode connecté (TCP), tu construis une requête HTTP valide (cf la RFC) et tu l'envoies. encore en t'appuyant sur la RFC, tu analyses le message (s'il retourne un "200 OK", c'est bon, par exemple :p )
 
sinon, il y a des libs pour faire ca, je crois ... cf libcurl, il me semble

n°1270574
le_duc
PlaTyPuS
Posté le 20-12-2005 à 11:33:51  profilanswer
 

euh... pt1 tout ca juste pour savoir si une adresse est OK...  
 
ca me parait bien la merde :S

n°1270619
el muchach​o
Comfortably Numb
Posté le 20-12-2005 à 12:59:28  profilanswer
 

Oui, c'est nul. Si c'est juste pour vérifier que la syntaxe du nom est correcte, il existe sûrement des libs, sinon, tu te fais une jolie regexp.


Message édité par el muchacho le 20-12-2005 à 13:00:03

---------------
Les aéroports où il fait bon attendre, voila un topic qu'il est bien
n°1270624
theshockwa​ve
I work at a firm named Koslow
Posté le 20-12-2005 à 13:16:05  profilanswer
 

... *relis le topic*
ah ouais, tiens, j'avais pas capté que ca se limitait à ça :D
par "valide", j'avais cru comprendre qu'il voulait qu'un site soit disponible à l'adresse indiquée
 
si ca se limite à vérifier le format d'une url, been, c'est plus simple ... ca doit être quelque chose du style :
protocole://[login[:pass]@]host/path
avec une regexp, ca se fait assez vite, oui
 
(edit typo)


Message édité par theshockwave le 20-12-2005 à 13:16:54
n°1270638
le_duc
PlaTyPuS
Posté le 20-12-2005 à 13:30:09  profilanswer
 

ouais mais justement... si je test simplement le format de l'url, ca passera pas spécialement bien non?
 
genre l'adresse: www.clubic.com & http://www.clubic.com sont valide tout comme blabla.clubic.com est également valide...
 
C'est pour ca que je voulais testé si on pouvait accéder à la page et si c le cas ben c bon... mais j'aurais juste besoin de savoir si la page est accessible!

n°1270661
le_duc
PlaTyPuS
Posté le 20-12-2005 à 13:52:11  profilanswer
 

j'essaie de faire ca :
 

Code :
  1. try
  2.         {
  3.                 NMHTTP1->Get("asdfqr" ); // asdfqr étan une URL :-D
  4.         }
  5.         catch(Exception *e)
  6.         {
  7.                 ShowMessage(e->Message);
  8.         }


 
Mais ce con n'arrete pas de me faire l'erreur "ESockError with message 'Host Lookup Failed'".... et j'arrive pas a catcher cette $*?=)£ erreur de *%"+*ç!

n°1270700
theshockwa​ve
I work at a firm named Koslow
Posté le 20-12-2005 à 14:11:50  profilanswer
 

dans ce cas, c'est bien ce que je préconisais plus haut ...
tu as regardé libcurl ? parce que ca propose ce genre de services (certes, sans la gestion d'exceptions, vu que la lib est faite pour être utilisée en C avant tout ...) mais bon, embarquer une lib comme ca si c'est juste pour vérifier la "browsabilité" d'une url, c'est sur que ca peut être un peu lourd :D
 
 
Edit : d'où tu sors ce NMHTTP1 ? Tu ne ferais pas du C++ managed, par hasard ?  :heink:


Message édité par theshockwave le 20-12-2005 à 14:12:38
mood
Publicité
Posté le 20-12-2005 à 14:11:50  profilanswer
 

n°1270711
le_duc
PlaTyPuS
Posté le 20-12-2005 à 14:16:47  profilanswer
 

le NMHTTP1 vient de borland... c'est un TNMHTTP :D
 
il a ca comme méthodes:

Code :
  1. In TNMHTTP
  2.  OnAboutToSend
  3.  OnAuthenticationNeeded
  4.  OnFailure
  5.  OnRedirect
  6.  OnSuccess
  7. Derived from TPowersock
  8.          OnAccept
  9.          OnConnect
  10.  OnConnectionFailed
  11.          OnConnectionRequired
  12.          OnDisconnect
  13.          OnError
  14.          OnHostResolved
  15.  OnInvalidHost
  16.  OnPacketRecvd
  17.  OnPacketSent
  18.  OnRead
  19.  OnStatus


 
... mais j'arrive pas a trouver comment éviter l'erreur! (dans Borland le OnError n'est pas disponible... je sias pas pkoi!)

n°1270748
theshockwa​ve
I work at a firm named Koslow
Posté le 20-12-2005 à 14:40:41  profilanswer
 

:heink:  
 
dans ce cas, ouais, tu ne devrais pas avoir besoin d'autre chose, cependant, je n'utilise pas Borland, donc je ne pourrai pas trop d'aider là-dessus (cependant, les OnInvalidHost et OnFailure semblent être dédiés à te fournir le genre de service que tu recherches, non ?)

n°1270765
HelloWorld
Salut tout le monde!
Posté le 20-12-2005 à 14:55:38  profilanswer
 

Sous Windows, y'a la fonction UrlIs qui peut peut être te convenir:
http://msdn.microsoft.com/library/ [...] /urlis.asp


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite
n°1270827
le_duc
PlaTyPuS
Posté le 20-12-2005 à 15:35:09  profilanswer
 

theshockwave a écrit :

:heink:  
 
dans ce cas, ouais, tu ne devrais pas avoir besoin d'autre chose, cependant, je n'utilise pas Borland, donc je ne pourrai pas trop d'aider là-dessus (cependant, les OnInvalidHost et OnFailure semblent être dédiés à te fournir le genre de service que tu recherches, non ?)


 
ben oui... mais c justement dans ces 2 méthodes que j'ai mis mon try, catch et ca fonctionne pas.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  [C++] Checker si une adresse web est valide???

 

Sujets relatifs
Retrouver un lieu à partir de son adresse IPUne page html, sans barre d'adresse, sans barre d'état ni de menu...
Je n'arrive pas à récupérer mon adresse réseau _externe_Contrôle adresse en javascript
Renvoi d'un chaîne d'adresse XValues etc...Récupérer Adresse IP Réseau [inet_ntoa]
Adresse mail comme nom de domainerecuperer une adresse mail
codes html non valide pour mon site de l'aide pleaseadresse MAC LOCAL
Plus de sujets relatifs à : [C++] Checker si une adresse web est valide???


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR