- - PR -
URL#name の name部分を取得したい
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2006-08-03 22:30
例えば、
http://hoge.com/hoge.jsp#name にアクセスし、 HTTPServletRequest requestからnameの部分を抽出したいのですが、 org.springframework.web.servlet.DispatcherServletで hoge.html に対して hoge.jsp をディスパッチしている状態です。 そのせいかどうかはわかりませんが、 http://hoge.com/hoge.html#name にアクセスし、 request.getRequestURI() 、 request.getRequestURL() を取得しても 戻り値はそれぞれ、hoge.html 、 http://hoge.com/hoge.html となり、 nameの部分の情報が取得できません。 これを取得する方法はないでしょうか? よろしくお願いいたします。 [ メッセージ編集済み 編集者: Jumpin' Jack Flash 編集日時 2006-08-04 11:47 ] | ||||
|
投稿日時: 2006-08-04 08:48
request.getRequestURI() 、
request.getRequestURL() の両メソッドでは通常取得できません。 request.getQueryString() メソッドで取得出来るはずです。 お試しください。 | ||||
|
投稿日時: 2006-08-04 11:21
フラグメント(アンカー部)は、Webサーバまで伝わらないので、 Servletでは取得できないのでは?QueryStringとも違いますし。 | ||||
|
投稿日時: 2006-08-04 11:47
コメントありがとうございます。
request.getQueryString() でも取得できませんでした。 JavaScriptだと、 location.hash や location.href で取得できるのですが、 JavaScriptは、使わない方針なので... #name の部分を使って、そこに飛ぶと同時に 処理を変えたかったので、 冗長ですが、 http://hoge.com/hoge.html?id=name#name #<div id="name"><a name="name">XXX</a></div> #とするのと同じような感覚で として、 処理を判定する際は、QueryStringを使おうと思っています。 #ぜんぜんはずしてると思いますが、 サーバーサイドのJavaScriptで、rhinoとかありますが、 locationオブジェクトはブラウザ固有のオブジェクトですから 使えないですよね? | ||||
|
投稿日時: 2006-08-04 12:44
正解! プログラミング言語としてのJavaScriptなので、ブラウザ側の情報も サーバ側で参照できるという意味では無いです。 |
1