Example if url is like this :
http://localhost:8080/someapplication/?token=sUyJhbGciiOiJIUzI1NiJ9.eyJleHAiOjE0NjYxNzIxNTIs1NiJ9.eyJleHAiOjE0NjYInN1YiI6ImthZ2FtaS1hdXRoLXRpY2tldCIsImlzcyI6ImFkbWluIiwicm9sZSI6ImFkbWluIn0.d50P0r2dyeB-XyOG7I-daRp2Pu1OzaBxwisS4Et_rYI&service=auth#/somepage
and output URL to be : http://localhost:8080/someapplication/#/somepage
working code through javascript below :
/*URL change start*/
if (history.pushState) {
var newurl = window.location.protocol + "//" + window.location.host + window.location.pathname + '?token=/';
window.history.pushState({path:newurl},'',newurl);
}
$(window).bind('hashchange', function() {
/* url change code here */
if (window.location.search.match("?token=")){
var newHash = "/" + window.location.search;
var newHash = "/" ;
if (window.history.replaceState){
window.history.replaceState( {}, "", window.location.toString().replace(window.location.search, ""));
}
}
});
function hashHandler(){
this.oldHash = window.location.hash;
this.Check;
var that = this;
var detect = function(){
if(that.oldHash!=window.location.hash){
//alert("HASH CHANGED - new has" + window.location.hash);
that.oldHash = window.location.hash;
}
};
this.Check = setInterval(function(){ detect() }, 100);
}
var hashDetection = new hashHandler();
/*URL change end*/
if (history.pushState) {
var newurl = window.location.protocol + "//" + window.location.host + window.location.pathname + '?token=/';
window.history.pushState({path:newurl},'',newurl);
}
$(window).bind('hashchange', function() {
/* url change code here */
if (window.location.search.match("?token=")){
var newHash = "/" + window.location.search;
var newHash = "/" ;
if (window.history.replaceState){
window.history.replaceState( {}, "", window.location.toString().replace(window.location.search, ""));
}
}
});
function hashHandler(){
this.oldHash = window.location.hash;
this.Check;
var that = this;
var detect = function(){
if(that.oldHash!=window.location.hash){
//alert("HASH CHANGED - new has" + window.location.hash);
that.oldHash = window.location.hash;
}
};
this.Check = setInterval(function(){ detect() }, 100);
}
var hashDetection = new hashHandler();
/*URL change end*/
-----------------------------------------------------------------------------------------------------------------------------
JavaScript provides you many methods to retrieve and change the current URL which is displayed in browser's address bar. All these methods uses the Location object, which is a property of the Window object. You can create a new Location object that has the current URL as follows:
var currentLocation = window.location;
Basic Structure of a URL
<protocol>//<hostname>:<port>/<pathname><search><hash>
- Protocol -- Specifies the protocol name be used to access the resource on the Internet. (HTTP (without SSL) or HTTPS (with SSL))
- hostname -- Host name specifies the host that owns the resource. For example,
www.stackoverflow.com
. A server provides services using the name of the host. - port -- A port number used to recognize a specific process to which an Internet or other network message is to be forwarded when it arrives at a server.
- pathname -- The path gives info about the specific resource within the host that the Web client wants to access. For example,
/index.html
. - query -- A query string follows the path component, and provides a string of information that the resource can utilize for some purpose (for example, as parameters for a search or as data to be processed).
- hash -- The anchor portion of a URL, includes the hash sign (#).
With these Location object properties you can access all of these URL components
- hash - Sets or returns the anchor portion of a URL.
- host - Sets or returns the hostname and port of a URL.
- hostname - Sets or returns the hostname of a URL.
- href - Sets or returns the entire URL.
- pathname - Sets or returns the path name of a URL.
- port - Sets or returns the port number the server uses for a URL.
- protocol - Sets or returns the protocol of a URL.
- search - Sets or returns the query portion of a URL
Hope it helps you.......
No comments:
Post a Comment
Do you think it could be useful for you? Share your thoughts with us!