2012-06-20 129 views
0

我正在制作Chrome扩展程序以获取所有打开标签的URL并将它们全部保存为将它们发送到域。所以我需要2个步骤:获取Chrome浏览器中所有打开的标签的URL,并将其发送到Web服务

  1. 获取所有打开的选项卡的URL并将它们存储在一个数组或像 这样的东西。
  2. 将所有网址的数组发送到域。
+2

你的问题是什么? –

+0

我是通过投票来猜测我并不是唯一一个认为这听起来很狡猾的人...... –

+0

这个问题有一个答案,解释了如何使用Javascript找到所有打开的选项卡网址:http://stackoverflow.com/问题/ 11915370 /正在检索哪些标签是在铬中打开 –

回答

5

查看chrome.windows.getAll以获取打开窗口的列表。每个窗口都有一个tabs属性,其中包含窗口中的选项卡列表。每个选项卡都有一个url属性。见tabs documentation

您需要遍历窗口,然后遍历每个窗口中的选项卡,然后将这些选项卡添加到您的阵列中,然后执行您想要执行的任何操作。

通常情况下,您不能这样做,但具有必要权限的Chrome扩展可以执行Cross-Origin XMLHttpRequest。您需要将该列表发送到其他域。

您可以使用JSON.stringify将数组转换为您可以发送的字符串,然后在服务器端将类似的函数转换回数组。

+0

使用'XMLHttpRequest'将URL列表发送到“域”。 –

+0

谢谢,更新我的回复与该信息。 – sachleen

0

我正在考虑制作类似的东西。如果您有一个“框”,您可以在列表中拖放想要的URL,而不是所有打开的标签。盒子上的一个按钮,用于复制当前存储到剪贴板的URL。

+1

这不是一个真正的答案。评论对于这种输入是完美的。 – AntonNiklasson

相关问题