Maillot de Redirection après le POST à l'extérieur URL
Je suis en utilisant le Maillot de créer des API REST. J'ai une méthode POST et comme une réponse à partir de cette méthode, l'utilisateur doit être redirigé vers l'URL personnalisée comme http://example.com
qui n'a pas à être lié à l'API.
J'ai été à la recherche à d'autres questions similaires sur ce sujet ici, mais je n'ai pas trouver quelque chose que je pourrais utiliser.
OriginalL'auteur Vuk Stanković | 2014-08-15
Vous devez vous connecter pour publier un commentaire.
Je te suggère de modifier la signature de JAX-RS-méthode annotée pour retourner un
javax.ws.rs.de base.Réponse de
objet. Selon que vous avez l'intention de la redirection permanente ou temporaire (c'est à dire que le client doit mettre à jour ses références internes pour tenir compte de la nouvelle adresse ou pas), la méthode doit construire et de retourner uneResponse
correspondant à une HTTP-301 (redirection permanente) ou HTTP-302 (redirection temporaire) code d'état.Voici une description dans le Maillot de la documentation sur la façon de retourner sur les réponses HTTP: https://jersey.java.net/documentation/latest/representations.html#d0e5151. Je n'ai pas testé l'extrait de code suivant, mais j'imagine que le code devrait ressembler à quelque chose comme ceci, HTTP 301:
...ou cette, HTTP 302:
Je viens d'essayer, et il semble que de 2,23 Jersey renvoie une 303 pour seeOther et une 307 pour temporaryRedirect (qui font beaucoup plus de sens que de, respectivement, 301 moved permanently et 302). La mise en cache sur les redirections 301 serait vraiment vis les choses pour l'OP du cas d'utilisation.
OriginalL'auteur sumitsu