2009-04-22 17 views
5

Zrobiłem bezwzględny URL w moim JavaScript, który mam zakodowany na windows.location.

Nie chcę tego zmieniać za każdym razem, gdy testuję swoją aplikację. W PHP radziłbym sobie z tym, testując zmienną $ _SERVER ["HTTP_HOST"], aby dowiedzieć się, na którym serwerze jestem, i odpowiednio dostosować. Jednak nie jestem zaznajomiony z Javą i zastanawiam się, czy ma podobną metodę? A może nawet JavaScript miał podobną metodę?

Kod jest w następujący sposób:

var url = "http://172.17.1.107/store/results/index.jsp"; 
window.location = url; 

Co chciałbym zrobić, to:

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; 

W PHP I byłby po prostu zrobić to:

var server = <?= $_SERVER["HTTP_HOST"] ?> 
var url = "http://" + server + "/store/results/index.php"; 
window.location = url; 

Wszelkie pomysły ? Przypuszczam, że działam przy założeniu, że musisz wykonać bezwzględny adres URL, aby zmienić położenie bieżącego okna w JavaScript. Jeśli istnieje inny sposób zmiany położenia okna w JavaScript bez bezwzględnego adresu URL, prosimy o to również.

góry dzięki ...

Odpowiedz

7

czego potrzebujesz to:

request.getServerName() 

Przykład:

<% 
String path = request.getContextPath(); 
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; 
%> 
-1

Naprawdę powinien mieć poszukać ale w JSP To:

request.getRemoteHost() 
2

Javascript:

var server = window.location.hostname; 
4

Przedmiotem lokalizacja has several properties, a jeden chcesz mieć hostname.

Ewentualnie możesz po prostu użyć względnego adresu URL i po prostu ustawić właściwość pathname i nie zadzieraj z firmą hosta!

location.pathname = "/store/results/index.jsp"; 
-3

Może to pomóc.

Zastąpi dowolne słowa przez cokolwiek lub nic. Będzie działać również na twoją prośbę.

var str = "Visit Microsoft!"; 
var res = str.replace("Microsoft", "W3Schools"); 
+1

Tak, a woda jest niebieska. HTF jest to powiązane !!! –

Powiązane problemy