2009-05-31 6 views
7

Une URL peut avoir une étiquette, séparée par un signe "#", venant après les paramètres d'URL. E.g. http://example.com/foo/bar.jsp?p1=v1#test_labelComment obtenir une étiquette d'URL lors de l'analyse de l'URL de demande?

Je m'attendrais à ce que label fasse partie de request.getQueryString() et fasse partie de request.getRequestURL(). ToString(). Mais il ne semble pas être là.

Existe-t-il un moyen de récupérer la valeur d'étiquette à partir de HttpServletRequest côté serveur?

Répondre

13

Je pense que la spécification HTTP a décidé que "ancres" (Est-ce qu'ils sont appelés? En tout cas, le signe de hachage et l'étiquette qui vient après) ne sont pas transmis au serveur, ils sont juste utilisé client -side pour faire défiler la page, ou pour être utilisé en JavaScript. Il n'y a donc aucun moyen d'obtenir cette valeur, si ce n'est qu'un petit script le transmet à votre serveur avec une requête Ajax une fois la page chargée, mais ce n'est pas très pratique.

+5

+1: Les ancrages sont strictement côté client. –

+0

gratz sur éclairé. –

+0

Yipee ~: D Merci –