2012-03-30 31 views
0

我正在爲PDF Chrome擴展程序的跟蹤URL鏈接找到鏈接原始地址,而不是從谷歌,Facebook等

function getD(info, tab) 
{ 
    var url = info.srcUrl; 
    var sb = "http://www.abcfadsds.com/?url="+info.linkUrl; 
    chrome.tabs.create({"url":sb}); 
} 

現在,這適用於大多數鏈接,但如果右鍵點擊谷歌的鏈接/ Facebook的 生成的URL是一樣的東西

http://www.google.co.in/url?sa=t&rct=j&q=pdf&source=web&cd...................... 

我如何獲得原始網址?

+0

我寫了一個UserScript/Chrome擴展程序禁用Google的URL重寫。請參閱http://userscripts.org/scripts/show/121923。 – 2012-03-30 10:40:52

回答

1

通常它是一個變量在url中。例如在谷歌鏈接你會看到類似的東西....
url=http%3A%2F%2Fwww.aaa.com%2F
...所以你只需要從鏈接中獲取url的值和unescape它。
即使世界JS的大比特解析此網址...
http://blog.stevenlevithan.com/archives/parseuri
......使用你可以做(​​對於谷歌鏈接)...

url = parseUri('http://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&ved=0CDMQFjAA&url=http%3A%2F%2Fwww.aaa.com%2F&ei=g2p1T4u6HcSoiAeO8-DYDg&usg=AFQjCNECtBRRPOF1ooUuuMtNR5y7DSChGQ'); 
link = unescape(url.queryKey.url); 
+0

嘿,我寫了這個 - 仍然沒有工作 - 沒有發生點擊 var url = parseUri(info.linkUrl); var hey = unescape(url.queryKey.url); chrome.tabs.create({「url」:hey}); – 2012-03-31 04:58:11

+0

向我顯示'info.linkUrl'的值,也許值''hey' – PAEz 2012-03-31 06:25:42

+0

我在網址上使用了chrome.tabs.create - 沒有打開,所以我認爲代碼中有錯誤。我如何獲得價值? – 2012-04-03 17:03:33