OVH Cloud OVH Cloud

[WD75) HTTPREQUETE

3 réponses
Avatar
Fabienf
J'ai trouvé une chose curieuse avec HTTPREQUETE :
Essayez ceci et voyerz le résultat :

HTTPRequête("http://www.zoo-palmyre.fr")
Info(HTTPDonneRésultat(HTTPRésultat))

Qui est totalement différent de ce qui apparait dans un champ HTML !!!

Pourquoi ?
Quelqu'un aurait une idée ?

3 réponses

Avatar
Pascal H
"Fabienf" a écrit dans
news:bpamd7$3ak$:

J'ai trouvé une chose curieuse avec HTTPREQUETE :
Essayez ceci et voyerz le résultat :

HTTPRequête("http://www.zoo-palmyre.fr")
Info(HTTPDonneRésultat(HTTPRésultat))

Qui est totalement différent de ce qui apparait dans un champ HTML
!!!

Pourquoi ?
Quelqu'un aurait une idée ?




Bonjour,

Sans doute parce que le site web que tu essayes d'atteindre
(http://www.zoo-palmyre.fr) est automatiquement redirigé vers une autre
page web (en l'occurence http://www.zoo-palmyre.com)

C'est d'ailleurs ce qu'indique le résultat de ton HTTPRequête :
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML
2.0//EN"><n><HTML><HEAD><n><TITLE>302
Found</TITLE><n></HEAD><BODY><n><H1>Found</H1><n>The document
has moved <A HREF="http://zoo-
palmyre.com">here</A>.<P><n><HR><n><ADDRESS>Apache/1.3.27 Server
at zoo-palmyre.fr Port 80</ADDRESS><n></BODY></HTML><n>

--  
Pascal
Avatar
Fabienf
C'est vrai. Je l'ai bien compris.
Mais ce que je ne comprends pas, c'est pourquoi le navigateur n'affiche pas
cette page.
Est-ce propre à Internet explorer (qui redirige automatiquement) ou il y a
des infos quelque part qui indique qu'il y a une redirection ?

Fabien


"Pascal H" a écrit dans le message de news:

"Fabienf" a écrit dans
news:bpamd7$3ak$:

> J'ai trouvé une chose curieuse avec HTTPREQUETE :
> Essayez ceci et voyerz le résultat :
>
> HTTPRequête("http://www.zoo-palmyre.fr")
> Info(HTTPDonneRésultat(HTTPRésultat))
>
> Qui est totalement différent de ce qui apparait dans un champ HTML
> !!!
>
> Pourquoi ?
> Quelqu'un aurait une idée ?
>

Bonjour,

Sans doute parce que le site web que tu essayes d'atteindre
(http://www.zoo-palmyre.fr) est automatiquement redirigé vers une autre
page web (en l'occurence http://www.zoo-palmyre.com)

C'est d'ailleurs ce qu'indique le résultat de ton HTTPRequête :
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML
2.0//EN"><n><HTML><HEAD><n><TITLE>302
Found</TITLE><n></HEAD><BODY><n><H1>Found</H1><n>The document
has moved <A HREF="http://zoo-
palmyre.com">here</A>.<P><n><HR><n><ADDRESS>Apache/1.3.27 Server
at zoo-palmyre.fr Port 80</ADDRESS><n></BODY></HTML><n>

--
Pascal



Avatar
Pascal H
"Fabienf" a écrit dans
news:bpavmd$991$:

C'est vrai. Je l'ai bien compris.
Mais ce que je ne comprends pas, c'est pourquoi le navigateur
n'affiche pas cette page.
Est-ce propre à Internet explorer (qui redirige automatiquement)
ou il y a des infos quelque part qui indique qu'il y a une
redirection ?




OK, désolé, j'avais mal compris la question.
Je pense que la fonction HTTPRequête n'effectue qu'une transaction et
s'arrête : elle fait un GET, te récupère le RESP et ensuite c'est à toi
d'effectuer un traitement en conséquence.
J'obtiens donc ceci :

<<
+++GET 951+++
GET / HTTP/1.1
User-Agent: WinDev7
Host: www.zoo-palmyre.fr
Accept: */*
Connection: keep-alive
Accept-encoding: gzip, deflate

+++RESP 951+++
HTTP/1.1 302 Found
Date: Tue, 18 Nov 2003 09:27:20 GMT
Server: Apache/1.3.27 (Win32) PHP/4.0.6
Location: http://zoo-palmyre.com
Keep-Alive: timeout, max0
Connection: Keep-Alive
Transfer-Encoding: chunked
Content-Type: text/html; charset=iso-8859-1
+++CLOSE 951+++






Le champ HTML est intimement lié à IE, comme tu l'as constaté.
Une fois passé l'adresse à IE, c'est lui qui à l'air de se débrouiller,
y compris pour les redirections (cf requête 952 suivie de la 953 après
traitement du code 302). Cette erreur 302 (document déplacé de façon
temporaire) est donc automatiquement traité et génère la requète
suivante en utilisant la réponse http://zoo-palmyre.com

Le log me donne ceci :
<<
+++GET 952+++
GET / HTTP/1.0
Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg,
application/vnd.ms-excel, application/msword, */*
Accept-Language: fr
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 4.0; .NET CLR
1.0.3705)
Host: www.zoo-palmyre.fr
Connection: keep-alive
Accept-encoding: gzip, deflate

+++RESP 952+++
HTTP/1.1 302 Found
Date: Tue, 18 Nov 2003 09:34:23 GMT
Server: Apache/1.3.27 (Win32) PHP/4.0.6
Location: http://zoo-palmyre.com
Transfer-Encoding: chunked
Content-Type: text/html; charset=iso-8859-1
+++CLOSE 952+++

+++GET 953+++
GET / HTTP/1.0
Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg,
application/vnd.ms-excel, application/msword, */*
Accept-Language: fr
Host: zoo-palmyre.com
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 4.0; .NET CLR
1.0.3705)
If-Modified-Since: Sun, 16 Nov 2003 15:51:27 GMT
If-None-Match: "966938-a50-3fb79cff"
Connection: keep-alive
Accept-encoding: gzip, deflate

+++RESP 953+++
HTTP/1.1 304 Not Modified
Date: Tue, 18 Nov 2003 08:39:48 GMT
Server: Apache/1.3.27 OpenSSL/0.9.6 (Unix) PHP/4.0.6
ETag: "966938-a50-3fb79cff"
+++CLOSE 953+++






... puis toutes les transactions de chargement des éléments de la page.

Remarque : j'utilise un proxy local pour analyser les trames HTTP.
Ce proxy est configuré sur mon port 8080.
Dans mon code j'ai ajouté :
Proxy("127.0.0.1","8080")
HTTPRequète prend bien en compte ce proxy mais pas le champ HTML ! Pour
qu'il soit utilisé, il faut que je force IE à utiliser le proxy.
Bonjour la souplesse ...

--
Pascal