Recuperer une valeur retounée par une page dynamique

Résolu
cs_le_chacal Messages postés 25 Date d'inscription mardi 28 octobre 2003 Statut Membre Dernière intervention 4 août 2005 - 1 août 2005 à 13:58
cs_le_chacal Messages postés 25 Date d'inscription mardi 28 octobre 2003 Statut Membre Dernière intervention 4 août 2005 - 4 août 2005 à 11:09
Salut tout le monde, je cherche depuis un petit moment a faire un script qui recupere le contenu d'une page (asp ou autre) pour savoir s'il y a le mot OK dedans.
exemple j'ai une URL que j'interroge et le serveur me repond "Status=OK"

Comme j'ai plein d'url a tester je voudrais qu'une seule page fasse les tests pour moi et si la page retoure OK je met Vert et si c KO je met Rouge.

La ou je seche grave c'est pour recuperer le contenu d'une page sans l'afficher, il me faudrait une fonction genre testPage("www.pouet.com?test=Status") qui me retounerai OK ou KO.

Si quelqu'un a une idée je suis preneur ! Je continue a chercher et si je trouve je posterais le source !

Merci
Le chacal

6 réponses

jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
4 août 2005 à 11:04
Si tu fais



Private Function CheckIfGood(ByVal url As String) As String
Dim RTN As String = String.Empty



Dim oRequest As HttpWebRequest
oRequest = WebRequest.Create(url)
oRequest.UserAgent = "applicationName"
oRequest.Timeout = TimeOut



Dim oResponse As HttpWebResponse
Try
oResponse = oRequest.GetResponse
If Not oResponse.StatusCode = HttpStatusCode.OK Then

RTN = CInt(oResponse.StatusCode) & " - " &
oResponse.StatusCode.ToString
Else
RTN = "OK"
End If


Catch ex1 As WebException

RTN = CInt(ex1.Status) & " - " & ex1.Status.ToString

Catch ex As Exception

RTN = "Pas normal"

End Try

Return RTN

End Function



puis dans le page load un label1.text = CheckIfGood("http://www.aspfr.com")



ca te dit quoi ? obligé qu'il écrive quelque chose, sinon faut revoir les tutos en asp.net :)

<hr> Cyril - MCP ASP.net
Webmaster de : Hoshimi.CodeS-SourceS.fr
3
jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
3 août 2005 à 10:51
Si tu travailles en asp.net c'est trés simple



il te suffit de faire une requete avec system.web.httprequest sinon en asp3 j'en ai aucune idée

<hr> Cyril - MCP ASP.net
Webmaster de : Hoshimi.CodeS-SourceS.fr
0
cs_le_chacal Messages postés 25 Date d'inscription mardi 28 octobre 2003 Statut Membre Dernière intervention 4 août 2005
4 août 2005 à 09:59
Ben pour l'instant je m'etais orienté asp3 mais j'ai l'esprit ouvert...

Par contre je l'utilise comment concretement httprequest ?
parce que le site de microsoft est pas tres clair...

merci

Le chacal
0
jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
4 août 2005 à 10:13
Un exemple de code qui devrait t'aider

Private Function CheckIfGood(ByVal url As String) As String


Dim RTN As String = String.Empty


Dim oRequest As HttpWebRequest
oRequest = WebRequest.Create(url)
oRequest.UserAgent = "applicationName"
oRequest.Timeout = TimeOut


Dim oResponse As HttpWebResponse
Try
oResponse = oRequest.GetResponse
If Not oResponse.StatusCode = HttpStatusCode.OK Then
RTN = CInt(oResponse.StatusCode) & " - " & oResponse.StatusCode.ToString
Else
RTN = "OK"
End If


Catch ex1 As WebException
RTN = CInt(ex1.Status) & " - " & ex1.Status.ToString
Catch ex As Exception
RTN = "Pas normal"
End Try
Return RTN
End Function

Tu trouveras ce que t'as envie dans oResponse :)



<HR>



Cyril - MCP ASP.net
Webmaster de : Hoshimi.CodeS-SourceS.fr
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_le_chacal Messages postés 25 Date d'inscription mardi 28 octobre 2003 Statut Membre Dernière intervention 4 août 2005
4 août 2005 à 10:43
J'avais récupéré ca :

Public Function RecupHTTP(ByVal URL As String) As String
' Déclaration des variables
Dim LeDomaine As Integer
Dim LeURL As String = ""
Dim LeHost As String = ""
Dim LeChemin As String = ""
Dim Resultat As String = ""
Dim RecupHTTPChaine As String = ""
Dim WebClient As New System.Net.Sockets.TcpClient()
Dim WebStream As System.Net.Sockets.NetworkStream
Dim WebWriter As System.IO.StreamWriter
Dim WebReader As System.IO.StreamReader
' On découpe l'url envoyée en paramètre à la fonction
LeDomaine = InStr(UCase(URL), "HTTP://")
If LeDomaine > 0 Then
LeURL = Mid(URL, LeDomaine + 7)
Else
LeURL = URL
End If
LeDomaine = InStr(LeURL, "/")
If LeDomaine > 0 Then
LeHost = Mid(LeURL, 1, LeDomaine - 1)
LeChemin = Mid(LeURL, LeDomaine)
Else
LeHost = LeURL
LeChemin = "/"
End If

' On construit notre requete HTTP
RecupHTTPChaine = "GET " & LeChemin & " HTTP/1.1" & vbCrLf & "Host: " & LeHost & vbCrLf & "Connection: Close" & vbCrLf & vbCrLf

' On ouvre une socket sur le port 80
WebClient.Connect(LeHost, 80)
WebStream = WebClient.GetStream
WebWriter = New System.IO.StreamWriter(WebStream)
WebWriter.Write(RecupHTTPChaine)
WebWriter.Flush()
WebReader = New System.IO.StreamReader(WebStream)

' On stock la page html dans notre variable "Resultat"
Resultat = WebReader.ReadToEnd()

' On ferme la socket
WebStream.Close()
WebClient.Close()

' On renvoi ce que l'on a récupéré
RecupHTTP = Resultat
End Function

Mais tout comme l'exemple que tu m'a donné ca retourne rien du tout, même pas d'erreur...
J'ai du rater un truc, je suis super lege en .net, autan en asp3 no problem mais la il y a des subtilités que je dois pas comprendre...

Le chacal
0
cs_le_chacal Messages postés 25 Date d'inscription mardi 28 octobre 2003 Statut Membre Dernière intervention 4 août 2005
4 août 2005 à 11:09
au temps pour moi ...
les deux fonctionnent parfaitement !
c'est juste que je ne peux pas afficher le résultat dans un label, mais avec un response.write tout C... ca marche nickel et en + les deux fonctions se completent, la tienne pour checker que la page repond et l'autre pour en recuperer le contenu ...

Merci a toi Maître...;-)

Le chacal
0
Rejoignez-nous