Conserver les données POST lors d'une redirection

HTML5, CSS3, Javascript, support des mobiles... Que penser de votre site ? Vous manquez d'informations pour la construction d'un site qui puisse s'afficher correctement partout ? C'est un problème simple, un peu complexe ? Venez ici !
calimo
Animal mythique
Messages : 14118
Inscription : 26 déc. 2003, 11:51

Conserver les données POST lors d'une redirection

Message par calimo »

Bonjour,

Est-ce qu'il y a un moyen, lors d'une redirection, de forcer le navigateur à conserver les données POST ?

Je pourrais les passer en GET, mais je préfèrerais les garder en post (il pourrait bien y avoir pas mal de données, y-compris des fichiers binaires, qui sont donc bien mieux en post !). Donc s'il y a une petite technique… (j'en doute mais on ne sait jamais !)
lpgc
Lézard à collerette
Messages : 259
Inscription : 16 juil. 2006, 01:02

Message par lpgc »

bonjour Calimo, :D ( j'ai pas la réponse ! )

En fait, il me semble avoir un problème équivalent... pas facile à expliquer

J'ai un lien sur une image ( panier.jpg ) qui devrait fair cela : ( aaa et xxxx sont des sites externes )
Mais au lieu d'utiliser le paramètre desturl proposé :
je voudrai utiliser la FORM Recherche d'une autre page :
En écrivant ceci je viens peut être de trouver une solution

je vais essayer de rediriger vers une de mes pages :
desturl=ma_page.asp qui pourra ainsi remplir la FORM de www.xxxx.com/recherche.htm

Cordialement
Christian

Message envoyé avec : Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.8.0.9) Gecko/20061206 Firefox/1.5.0.9
Dernière modification par lpgc le 09 janv. 2007, 09:32, modifié 3 fois.
Benoit
Administrateur
Messages : 4894
Inscription : 19 juil. 2003, 10:59

Message par Benoit »

Tu peux toujours utiliser mod_rewrite, multiviews ou quelque chose du genre, où ça devrait être fait automatiquement :)
♫ Li tens s'en veit, je n'ai riens fais ;
Li tens revient, je ne fais riens. ♪
lpgc
Lézard à collerette
Messages : 259
Inscription : 16 juil. 2006, 01:02

Message par lpgc »

bonjour, :D

:?: Serait il possible d'expliquer un peu comment çà fonctionne

Je crois savoir que pour envoyer un gros volume d'informations au serveur

on utilise une FORM ( post )

et comme paramètres à l'URL ( get ) www.xxx.com?param1=aa&param2=bb

quand le volume est plus faible ( quelques caractères : maximum ?? )

Je crois également savoir que pour envoyer ce volume important d'informations
Le browser ( FORM ) ouvre un nouveau socket spécifique pour se connecter au serveur ?

Comment serait il possible alors de rediriger les informations d'une FORM d'une première page sur la FORM d'une 2 ième page

Sans faire le travail soi même de lire les infos de la FORM 1 pour les remettre sur la FORM 2

Et Où le travail se fait il ?? Est ce côté client OU côté Serveur ??

Merci pour un peu plus d'info afin d'éclairer ma lanterne
et éventuellement où est il possible de trouver un tutorial pour la proposition de Benoit :?:

Cordialement
Christian

PS. Le serveur lit la FORM... mais la redirection est ce côté Serveur OU côté client ? ...
donc est ce que la page de la FORM 1 est envoyée sur le Client et puis la page de la FORM 2
OU le serveur détecte la redirection et envoie directement la FORM 2
( comme on peut placer une tempo sur la redirection, je suppose que çà se fait côté client ?? )

Message envoyé avec : Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.8.0.9) Gecko/20061206 Firefox/1.5.0.9
calimo
Animal mythique
Messages : 14118
Inscription : 26 déc. 2003, 11:51

Message par calimo »

Benoit a écrit :Tu peux toujours utiliser mod_rewrite, multiviews ou quelque chose du genre, où ça devrait être fait automatiquement :)
Beh non, pas possible, ce serait trop bô :?
Ce n'est pas dans apache :(

En fait j'ai besoin de rediriger les pages blabla vers blabla/ j'ai donc une regexp qui fait ça. Ça envoie un 302 Found au navigateur suivi d'un "Location" contenant le / final. Et là, c'est le drame ! Les données post sont évidemment perdues :?

@ LPGC: c'est pas sympa de squatter mon sujet :P
Cela dit, comme toujours, tu trouveras plein d'infos sur wikipédia :wink:
http://en.wikipedia.org/wiki/Http_redir ... Techniques

Message envoyé avec : Mozilla/5.0 (X11; U; Linux i686; fr; rv:1.8.0.9) Gecko/20061206 Firefox/1.5.0.9
Asumbaa
Tyrannosaurus Rex
Messages : 2411
Inscription : 08 déc. 2004, 20:07

Message par Asumbaa »

calimo a écrit :En fait j'ai besoin de rediriger les pages blabla vers blabla/ j'ai donc une regexp qui fait ça. Ça envoie un 302 Found au navigateur suivi d'un "Location" contenant le / final. Et là, c'est le drame ! Les données post sont évidemment perdues :?
Salut Calimo,

Est-ce que ce serait ce genre de souci ?

Message envoyé avec : Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.8.1.1) Gecko/20061204 Firefox/2.0.0.1
Bobe
Iguane
Messages : 742
Inscription : 28 juil. 2003, 21:29

Message par Bobe »

calimo a écrit :En fait j'ai besoin de rediriger les pages blabla vers blabla/ j'ai donc une regexp qui fait ça. Ça envoie un 302 Found au navigateur suivi d'un "Location" contenant le / final. Et là, c'est le drame ! Les données post sont évidemment perdues :?
Normalement, les redirections doivent être suivies en reprenant la méthode http de la requête d'origine.
La doc indique que pour le code 302, la redirection se fait souvent en GET par les agents utilisateurs mais que c'est une erreur:
http://www.w3.org/Protocols/rfc2616/rfc ... #sec10.3.2

Essaie plutôt avec une redirection temporaire (307 "Temporary Redirect").
Ou cherche un moyen d'éviter d'avoir besoin de faire cette redirection.

Message envoyé avec : Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.1) Gecko/20061208 Firefox/2.0.0.1
« La vie d’un geek est un combat perpétuel contre l’imperfection »
calimo
Animal mythique
Messages : 14118
Inscription : 26 déc. 2003, 11:51

Message par calimo »

Bobe a écrit :Essaie plutôt avec une redirection temporaire (307 "Temporary Redirect").
Ou cherche un moyen d'éviter d'avoir besoin de faire cette redirection.
Le problème c'est que ça veut dire mettre des liens absolus partout pour que, par exemple, un ../ soit équivalent sur la page http://.../foo/bar et http://.../foo/bar/ :?

Bon, je vais travailler dans cette direction alors :lol: (en fait c'est un peu ce que je craignais, je voulais surtout avoir confirmation de ma supposition).

@Asumbaa: merci, mais en fait la page http://.../foo/bar fonctionne bien, c'est juste qu'un lien ../ y a un comportement inattendu et on revient à http://.../ au lieu de se retrouver sur http://.../foo/ s'il y a un slash final... :wink:

Message envoyé avec : Mozilla/5.0 (X11; U; Linux i686; fr; rv:1.8.0.9) Gecko/20061206 Firefox/1.5.0.9

Edit : @lpgc: tu pourrais éditer ton message avec le lien très long pour le mettre dans un
? C'est très désagréable cette scrollbar :roll:
Répondre

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 5 invités