2012-04-14 98 views
-4

我已經通過參數「access_token」 將一個重定向瀏覽器的站點鏈接到另一個服務器,例如,使用Javascript或PHP獲取URL參數?

http://somedomain.com/blank.html#access_token=sadf2342dsdfsd

我怎樣才能從URL該參數的頁面將被重定向到另一個服務器之前?

+1

@GabrielSantos其20%:) – Ozzy 2012-04-14 22:45:07

+0

好!堆棧溢出成爲一個更好的地方,總是接受解決你的問題的答案。這有助於那些尋找類似於您所要求解決問題的人。 – 2012-04-14 22:47:18

回答

1

我想你試圖訪問客戶瀏覽器的地址欄後,它已經離開你的網站?

這是不可能的,除非您在iframe中打開該網站,然後使用javascript訪問該子框架。

您可以輕鬆地通過更改鏈接的目標(例如,

更改此:

<a href="http://thewebsite.com/">Go to website</a> 

要這樣:

<iframe name="tokenFrame" id="tokenFrame" width=1 height=1 frameborder=0> </iframe> 
<a href="http://thewebsite.com/" target="tokenFrame">Don't go to website</a> 

然後在JavaScript中,後的頁面已經改爲一個與令牌:

var url = document.getElementById("tokenFrame").src 

或類似的東西獲得位置,例如

var frame = document.getElementById("tokenFrame"); 
var url = frame.top.location.href; 

或者

var url = top.tokenFrame.location.href; 

最後解析URL現在來獲取值

1

我不清楚你的問題。儘管我對從URL獲取access_token參數的方式提出了一些建議。

前提是你知道的網址,你可以爆炸的串並獲得..的access_token它可能是這個樣子:

echo end(explode('#', 'http://somedomain.com/blank.html#access_token=sadf2342dsdfsd')); 

如果您是直接在網站上,你可以使用JavaScript來獲得哈希:

document.location.hash.substr(1) 
+0

所以如果我在http://somedomain.com/blank.html#access_token=sadf2342dsdfsd我應該粘貼這個document.location.hash.substr(1)?在我的網站上我重定向? – iStark 2012-04-14 22:34:06

+0

我不明白你要去哪裏,對不起。是somedomain.com/blank.html#access_token=sadf2342dsdfsd您的網站,您可以訪問blank.html?如果是這樣,你應該只是在blank.html文件中的js代碼。也許與document.write: hskrijelj 2012-04-14 23:27:36

0

在javascript中你可以抓住它的價值這樣

window.location.hash.replace('#access_token=','')