2011-03-01 2 views
1

J'ai un cas d'utilisation qui va comme ceci:comment rediriger une charge utile HTTP?

 
1- A user logs-in to a FIRST server (via a web form of some sort). 
2- This FIRST server establishes the user connection. 
3- The FIRST server sends a URL redirection to the user. 
4- The user's browser will point to SECOND server. 

C'est là on ne sait pas si ce qui est dans ma tête est en fait possible.

La redirection du navigateur peut-elle envoyer une charge utile dans un HTTP POST/GET à l'URL redirigée? Disons que:

 
5- SECOND server recieves POST in servlet to process the payload 
public void doPost(HttpServletRequest req, HttpServletResponse resp) 
    throws ServletException, IOException { 
    ... 
} 

Qu'est-ce qui se passe réellement, est que j'ai 2 serveurs. FIRST établit les connexions et renvoie un jeton (avec évaluation de la sécurité, informations sur l'utilisateur, etc.). Ce jeton doit être transmis à SECOND qui analysera ce jeton (un flux XML) pour "connaître" l'utilisateur.

Je suis complètement fou?

Thx.

Répondre

2

Cela dépend du type de redirection que vous effectuez. Si vous utilisez simplement un en-tête "location", vous ne pourrez passer qu'une charge utile GET. Maintenant, afin d'envoyer plus de données, vous devez écrire une page temporaire (qui peut être vide) avec un <Form> (qui peut être caché) qui pointent vers le 2ème serveur et qui se soumettra automatiquement automatiquement (en utilisant Javascript par exemple). Le formulaire sera capable de POSTER n'importe quelle donnée au 2ème serveur. Veuillez prendre en compte les problèmes de sécurité lors de l'envoi de jetons d'un serveur à un autre et assurez-vous que personne ne peut les deviner ou les copier, ou que les deux serveurs communiquent autrement pour s'assurer que tous les clients sont légitimes.

+0

Ok, merci pour cet aperçu. On m'a demandé de produire "quelque chose" qui recevra un Token, et que je puisse analyser. Je suis sûr que ce sera via URL redirection ou POST, mais avec une redirection, j'ai besoin de la charge utile de jeton de toute façon, d'où un POST. –

Questions connexes