• ベストアンサー

tomcat #パラメータ 取得方法

tomcatでリクエストの#以降の文字列を取得したいのですが、 取得方法がわかりません。 取得方法をご存じの方、是非教えてください。 なぜ取得したいのかというと、OneDrive REST APIを使いたいからです。 OneDrive REST API では ログイン後にリダイレクトされるリクエストには#パラメータが 付加されており、それを取得したいのです。 リダイレクト先をウェブページにし、 window.location.hashで取得できるのは確認できましたが、 ウェブページを介さずに直接サーバで操作したいと思っています。

  • fm4
  • お礼率100% (1/1)

質問者が選んだベストアンサー

  • ベストアンサー
noname#247307
noname#247307
回答No.1

Tomcatで取得するという意味がよくわからないのですが。サーブレットかJSPで取得する、という意味でしょうか。 なら、request.getQueryStringでクエリ文字列を取得し、indexOfで#の位置を調べてそれ以降をsubstringすれば得られると思いますが。

fm4
質問者

お礼

解決しました。 有難う御座いました。 アンカー部分はサーバに飛ばないようです。 tomcatは何も受け取っていないらしいです。 やはり一度クライアント側で取得してリクエストするしかないようです。

fm4
質問者

補足

>Tomcatで取得するという意味がよくわからないのですが。 すみません。Servletで取得するという意味です。 requestのget系で取得できる値は全て確認しましたが、 #以降の値が取得できるものが無いようなのです。 getQueryStringはnullでした。 OneDriveからのリダイレクトではなく、 wgetでのリクエストも試したので、 #以降の文字列が送信されていることは間違いないと思うのですが。 tomcatが破棄しているように思うのですが、 そのあたりの仕組みはご存知でないでしょうか。

関連するQ&A

  • javascriptでGETパラメータを扱う

    javascript初心者です。 javascriptでURLをGETパラメータとして取得して、その値を HTMLのaタグのリンク先に指定しようとしています。 こんな感じに出来たらいいと思っています。 ↓ <a href="[GETパラメータで取得したURL]">[GETパラメータで取得したURL]</a> GETパラメータの取得は自力で調べて下記のように記述すればできることがわかりましたが、 aタグのリンク先に指定する記述方法が分かりません。 助けてください。 よろしくお願いします。 <script type="text/javascript"> function getUrlVars() { var vars = [], hash; var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&'); for(var i = 0; i < hashes.length; i++) { hash = hashes[i].split('='); vars.push(hash[0]); vars[hash[0]] = hash[1]; } return vars; } </script>

  • URLのパラメータを取得するスクリプトは?

    初心者です。 無謀にもURLのパラメータを取得するためのスクリプトを作成していますが、 どうしても分からなく・・。 例えば「http://pekepeke.com/sample.html?AA=1234&BB=9876」のURLから、「AA」「BB」の パラメータ「1234」「9876」を取得し表示したいと考えています。 色々調べながら・・・下記を作成したのですが、表示が1項目のみしかされません。。 (素人・・と笑われるかもしれませんが・・) どうしたら2つ(目標は10項目ぐらいですが)を項目別に行別に表示できるのかを教えて 下さい。。 ---------------サンプル <html> <head> <title>JS test</title> </head> <body> <script> function getUrlVars() { var vars = [], hash; var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&'); for(var i = 0; i <hashes.length; i++) { hash = hashes[i].split('='); vars.push(hash[0]); vars[hash[0]] = hash[1]; } return vars; } var tag1 = null; var hash = getUrlVars(); var tag1 = 'AA ' +hash['AA'] var tag2 = null; var hash = getUrlVars(); var tag2 = 'BB ' +hash['BB'] document.write(tag1); document.write(tag2); </script> </body> </html> ------------------------------------------------ どうぞよろしくお願いします。

  • vodafoneの古い携帯(P3P4など)でheader('Location: ')が使えない

    携帯端末用のWebサイトをPHP4にて構築しています。 リダイレクトをさせようとheader( 'Location: http://www.test/test?id=100'); などと使用すると、引数がリダイレクト先で受け取れなくて困っています。 サーブレットの getRequestDispatcher のように、リクエストを丸投げできるフォワードのような処理ができる 方法はないでしょうか? (最近の3G端末などなら、引数のパラメータが取得できるのですが。。。) どなたかご存知の方、よろしくご教授ください。

    • ベストアンサー
    • PHP
  • WebWork(struts2)でのパラメータの取得について

    こんにちは。 環境:Webwork & Velocity(xwork2) & Tomcat5.5 & JDK 1.6 Action部がだいぶすっきりしましたが、requestのパラメータの取得が分かりません。 一般的なActionSupportを継承しているのですが、thisからHTTPRequestらしきGetterもありませんし・・。 やろうとしている事は'XXX.action?id=YYY'のように、URLからパラメータをgetしたいのですが。 ■JavaScript var url = "XXX.action?id=test"; ※Ajaxでリクエストしてますが省略します。 ■XML <action name="XXX" class="aaa.XXXAction">  <result name="menu" type="plainText">   /WEB-INF/classes/aaa/menu.html  </result>  <result name="test" type="plainText">   /WEB-INF/classes/aaa/test.html  </result> </action> ■Action public class XXXAction extends ActionSupport {  public String execute() throws Exception {   return SUCCESS; //←ここでURLにくっついたパラメータを返したい お分かりになりましたら、よろしくお願いします。

    • ベストアンサー
    • Java
  • 「location.hash」について?

    http://archiva.jp/web/javascript/tab-menu2.html 上記のサイトで説明されているプログラムで、「location.hash」が下記の様に使われています。 var hash = window.location.hash; hash = hash.split("?"); hash = hash[0].split("#"); URLが「●●●.html#△△△」の時には、「location.hash」は「#△△△」になると思います。 しかし、上記のプログラムでは、「●●●.html○○#△△△?▲▲」左記の様にURLがなっていると、想定されたプログラムです。 ページ内リンクのURLは、「●●●.html#△△△」であるので、「hash = hash.split("?");」「hash = hash[0].split("#");」の部分は不要ではないでしょうか?

  • ApacheからVirtualHostでTomcatへ連携させたいのです!

    皆様、こんにちわ。 いつもお世話になっております。 ApacheとTomcatの連携での質問なのですが、 私が実現したいのは下記のような感じです。 http://www.hoge1.co.jp でリクエストされたら、連携しているTomcatのアプリケーション /app1 へ遷移し、同様に http://www.hoge2.co.jp でリクエストされたら、連携しているTomcatの /app2 へ遷移させたいです。 リダイレクトさせれば簡単なのだと思いますが、 できればそのまま遷移させたいです。 環境は Apache 2.0.48 (Linux) Tomcat 5.5.6 (Windows) です。 連携自体はmod_jkによってうまくいっています。 どなたか方法をご存知の方はご教授下さい。 よろしくお願いいたします。

  • Apache+JDK+Tomcatでhhtp→httpsへリダイレクト

    初めましてryoutapapaと申します。 現在公開しているWebサイトへの接続を全てhttpsで接続させたいとの要望がありapacheの設定をいじっております。 ************************* <環境> Redhat ES 3.x Apache 2.2.2 jdk1.5.0 Tomcat 5.0.28 <備考> Webサーバは、Apache+JDK+Tomcatで構成しJavaシステム(業務用)を稼働させています。 OpenSSLの導入、及びoepnsslコマンドを使用しての秘密/公開キーは作成済みで、http://hoge.hoge.com/,https://hoge.hoge.com/への接続は問題なくできております。 ************************* 上記の状態で、http://hoge.hoge.com/のリクエストを全てhttps://hoge.hoge.com/へリダイレクトしてやりたいのですが、http.confへ Redirect permanent / https://hoge.hoge.com/ と単純に設定しても上手くいきません。 ************************* <エラー内容> ページリダイレクト設定が正しくありません このアドレスへのリクエストに対するサーバのリダイレクト設定がループしいます。 *FireFox2.0.0.1での結果 ************************* 方法がありましたらご教授いただきたくお願いいたします。 *足りない情報、若しくは不作法な点がありましたらご指摘くださいますようお願いいたします

  • axis パラメータ

    apache + tomcat + axis で Webサービス(Javaクラス) を使っています。 Webサービス(Javaクラス)にサーバのパラメータを渡すことは可能でしょうか? クライアントからWebサービス(Javaクラス)に引数を渡す方法ではなく、 サーバ(axis)のWeb.xmlなどに記述する方法を探しています。 (起動するサービスごとにパラメータを分けたい) よろしくお願い致します。

    • ベストアンサー
    • Java
  • formヘルパーを使わないと、パラメータを取得できないのでしょうか?

    symfonyを使用してますが、 formヘルパーを使わないと、リクエストのパラメータを取得できないのでしょうか? --------------------------------------------------- <form action="/web/xx.php/xx/xxx" enctype="text/plain" method="post"> <input type="text" name="model" value="50"> <input type="submit" value="検索"> </form> --------------------------------------------------- 上記だと、パラメータを取得できるが、下記だと取得できる。 --------------------------------------------------- <?php echo form_tag('/web/xx.php/xx/xxx') ?> <?php echo input_tag("model","50") ?> <?php echo submit_tag('検索')?>

    • 締切済み
    • PHP
  • GoogleMapのAPI取得方法

    GoogleMapのAPI取得方法 GPSログを使って行動記録と写真を表示する結果、GoogleMapが使われます。PC上での表示はOKですが、それをWebサイト(自分のHP)にアップするとGoogleに登録し「API」を取得しないと閲覧できません。取得方法はGoogleのサイトに「登録してAPI取得」のページが有るのですが、極めて煩雑でどうすれば取得できるか分かりません。若し、体験のある方が居られましたら具体的は方法をお教え頂きたくお願いいたします。