是否有办法获得谷歌搜索重定向url重定向后
Is there a way to get the google search redirect url after redirecting?
例如,你在google.com上搜索一些东西,你点击一个结果链接,然后你将被重定向到一个'https://www.google.....',然后到正确的网站。我怎么能得到url ('https://www.google.....')后,我来到正确的网站。
document.referrer
不能帮助。它只给出'https://www.google.com/',而我想获得完整的url。
这样做的最好方法可能是使用chrome.webRequest
在重定向之前获得旧的引用者。
一种方法是这样做的:
var requestIds = [];
chrome.webRequest.onBeforeRequest.addListener(function(details){
var temp = {requestId:details.requestId,url:details.url}
requestIds.push(temp);
},
{urls: ["*://www.google.com/url*"]});
chrome.webRequest.onBeforeSendHeaders.addListener(function(details){
requestIds.forEach(function(v,i,a){
if(parseInt(details.requestId)-parseInt(v.requestId)<=2){
details.requestHeaders.forEach(function(val,ind,arr){
if(val.name =="Referer")
val.value = v.url;
});
requestIds.splice(i,1);
}
});
},
{urls: ["<all_urls>"],types:["main_frame"]},["requestHeaders","blocking"]);
您还需要"webRequest","webRequestBlocking"
作为您在manifest文件中的权限。
所做的是取出url,然后将其添加到近似结果调用的请求头中。我本来打算展示如何在重定向期间requestId
保持不变,但它不是传统的重定向。据我所知,没有办法将第一个请求与下一个请求关联起来,除了它将有一个非常接近的id,因此是<= 2
。不管您想用它做什么,第一个侦听器都会为您提供您想要的url,只是可能很难将它与结果页面关联起来。
请注意,虽然这确实改变了引用头,但它不会显示在开发工具或document.referrer
中。
相关文章:
- 通过javascript重定向html传递php变量
- JavaScript下拉菜单-点击按钮并根据所选值重定向到url
- 使用angular重定向到html页面
- 如何在chrome扩展中重定向到html页面
- 无法从jquery Mobile导航栏重定向到另一个页面
- ng视图外的链接重定向到ng视图内的页面
- 在phonegap应用程序内部重定向不起作用
- jQuery使用inArray搜索和重定向邮政编码
- 如果当前网址不包含位置搜索,请重定向到主页
- 如何在重定向到另一个页面后维护一个页面值(搜索值和表记录值)
- 使用 JavaScript 搜索字符串,如果结果为 true,则重定向页面
- 阿尔戈利亚重定向到搜索结果
- 如何将自动完成搜索框重定向到显示视图
- Javascript在正文文本中搜索关键字,如果找到,则重定向到特定的URL
- 重定向页面覆盖谷歌搜索中的真实页面
- 我应该使用哪些功能来url安全搜索重定向
- 重定向到特定的url基于用户输入,但如果没有预定义的关键字存在搜索网站
- 如何从谷歌网页搜索api重定向搜索结果
- 是否有办法获得谷歌搜索重定向url重定向后
- 对单个搜索结果进行重定向