JSPやJavaScript、PHPの$ _SERVER [「HTTP_HOST」]に相当?
-
13-09-2019 - |
質問
私は、ハードコードされているwindow.locationのために私のJavaScriptで絶対URLを行ってきました。
私は自分のアプリケーションをテストしていこのたびを変更する必要がありますする必要はありません。 PHPで私が上だ何のサーバを見つけると、それに応じて調整するの$ _SERVER [「HTTP_HOST」]変数をテストすることによって、これを扱っているだろう。しかし、私は、Javaと同じように慣れていないんだと、それは同様の方法を持っている場合は疑問に思って?それともでもJavaScriptは同様の方法を持っていた場合はどうなりますか?
次のようにコードは
var url = "http://172.17.1.107/store/results/index.jsp";
window.location = url;
私は何をしたいのです。
var server = [something that returns just 172.17.1.107 (with or without the http:// is fine)]
var url = "http://" + server + "/store/results/index.jsp";
window.location = url;
PHPで私はこれを行っています。
var server = <?= $_SERVER["HTTP_HOST"] ?>
var url = "http://" + server + "/store/results/index.php";
window.location = url;
任意のアイデア?私はあなたがJavaScriptで現在のウィンドウの位置を変更するには、絶対URLをしなければならないという仮定の下で動作していたとします。絶対URLずにJavaScriptでウィンドウの位置を変更する別の方法がある場合は、同様のことを提供すること自由に感じなさいます。
事前のおかげで...
解決
何が必要です。
request.getServerName()
例:
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
他のヒント
場所オブジェクトはのいくつかの性質を持っており、あなたがしたいと思うものですホスト名でます。
それとも、あなただけのルート相対URLを使用し、オプションすることができ、ちょうどhref="http://www.w3schools.com/HTMLDOM/prop_loc_pathname.asp" rel="nofollow noreferrer">パス名プロパティではなく、すべてのホスト業務と混乱!
location.pathname = "/store/results/index.jsp";
のJavascriptます:
var server = window.location.hostname;
あなたは本当にこのための検索を持っている必要がありますが、JSPにそれはあります:
request.getRemoteHost()