获取非常具体的网址

时间:2017-04-02 22:49:14

标签: javascript url

我希望在我的网址上获得非常具体的字符串,以在js中添加参数:

 function cambiarContrasena(usuario, completado, fallo) {
            apiService.post('/api/usuario/cambiarContrasena?token=', usuario,
            completado,
            fallo);
        }

网址

http://localhost:55728/Cliente/#/cambiarContrasena.html?Token=e12009cf-d48d-42e7-ba43-83b5082019bb

我想只有Guid afrer Token=喜欢:

e12009cf-d48d-42e7-ba43-83b5082019bb

我尝试使用:

   var url = (location.pathname + location.search).substr(1);
    function cambiarContrasena(usuario, completado, fallo) {
        apiService.post('/api/usuario/cambiarContrasena?token='+url, usuario,
        completado,
        fallo);
    }

但是我得到了

http://localhost:55718/api/usuario/cambiarContrasena?token=Cliente/

我也试过:

var guid = url.substr(url.indexOf('Token=') + 6);
        function cambiarContrasena(usuario, completado, fallo) {
            apiService.post('/api/usuario/cambiarContrasena?token='+guid, usuario,
            completado,
            fallo);
        }

但是我得到了

  

未捕获的ReferenceError:未定义url

在Token =?

之后我只需要获取参数

我试着这个question

 function getParameterByName(name, url) {
            if (!url) {
                url = window.location.href;
            }
            name = name.replace(/[\[\]]/g, "\\$&");
            var regex = new RegExp("[?&]" + name + "(=([^&#]*)|&|#|$)"),
                results = regex.exec(url);
            if (!results) return null;
            if (!results[2]) return '';
            return decodeURIComponent(results[2].replace(/\+/g, " "));
        }
        function cambiarContrasena(usuario, completado, fallo) {
            apiService.post('/api/usuario/cambiarContrasena?token='+getParameterByName, usuario,
            completado,
            fallo);
        }

但是我收到了一个错误:

  

POST   http://localhost:55718/api/usuario/cambiarContrasena?token=function%20getPa ...%20%20var%20regex%20 =%20new%20RegExp(%22 [&安培;?]%22%20 +%20name%20 +%20%22(=([^&安培;   400(不良请求)

1 个答案:

答案 0 :(得分:1)

试试这个:

var url = window.location.hash.split('?Token=')[1];
var guid = url || '';