2017-04-02 50 views
-1

我想對我的網址,以獲取非常具體的字符串,在JS添加爲參數:獲取非常具體的網址

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

URL

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); 
     } 

,但我得到

Uncaught ReferenceError: url is not defined

我需要做的令牌後,只得到參數是什麼=?

我嘗試,因爲這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 (Bad Request)

+1

的可能重複[我怎樣才能得到查詢字符串JavaScript中的值?](http://stackoverflow.com/questions/901115/how-can-i-get-query-string-values-in-javascript) – Archer

+0

我看過了,但是我不知道該如何實現它@Archer – Luis

+0

我試試它作爲你的參考,但我仍然收到錯誤@Archer – Luis

回答

1

只是試試這個:

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

問題是該標記是動態的,所以它可以改變每一個帖子,所以我需要閱讀它,然後申請URL @ – Luis

+1

@Luis,Hajji的回答是有效的。請在判斷前試用 – Mojtaba

+0

是的,現在可以使用。非常感謝你!! – Luis