2012-03-30 32 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