Wie leite ich eine Anfrage mit Javascript mit Pfad um?

my-domain.com/abc to www.other-domain.com/abc

Wobei 'abc' der Anforderungspfad wäre. Ist es auch möglich, auch Abfrageparameter und Fragmentkennungen weiterzuleiten?

1
xybrek 19 Nov. 2013 im 20:42

4 Antworten

Beste Antwort

Dies sollte serverseitig erfolgen, aber wenn Sie es mit Javascript tun möchten, können Sie dies tun

location.href = location.href.replace(/(https?:\/\/)[^/]+/,'$1'+'www.other-domain.com');

Hinweis: Dieser reguläre Ausdruck umfasst die Weiterleitung mit demselben Protokoll wie die URL. Wenn Sie das Protokoll nicht einschließen, wird versucht, auf dieselbe Domain wie die Seite umzuleiten, jedoch mit "www.other-domain.com/ ..". als relativer Pfad. Sie müssen also das Protokoll einschließen. Alternativ können Sie es einfach so fest codieren:

location.href = location.href.replace(/(https?:\/\/)[^/]+/,'http://www.other-domain.com');

1
Crayon Violent 19 Nov. 2013 im 16:47
window.location.replace("http://www.other-domain.com/abc");

Siehe Window.location - Web-API-Schnittstellen | MDN für weitere Informationen.

0
Daniele Torino 19 Nov. 2013 im 16:54

Dies sollte Ihr Problem lösen, es wird jedoch dringend empfohlen, dies auf Serverebene durchzuführen.

window.location = 'www.other-domain.com' + (location.pathname + location.search);
0
Felipe Francisco 19 Nov. 2013 im 16:47

Etwas wie:

var url = "http://www.other-domain.com" + location.path + location.search + location.hash;
location.href = url;

Für weitere Informationen: http://www.w3schools.com/jsref/obj_location.asp

0
Zyphrax 19 Nov. 2013 im 17:02