如何在不打开Javascript窗口的情况下发送HTTP请求?

时间:2010-12-07 01:37:18

标签: javascript xmlhttprequest xdr

现在我正在尝试使用window.open

打开一系列网址
for(i=0;i<10;i++)
{
    window.open("myapp://arg1/arg2/arg3/number_"+i);
}

它工作正常,除了弹出十个窗口。我想知道是否有任何方法可以使用未显示的窗口进行此工作?帮助将不胜感激!

3 个答案:

答案 0 :(得分:6)

如果您只想发送这些请求并且不关心他们的回复,那么您可以创建一个图片:

for(i=0;i<10;i++)
{
    new Image().src = "myapp://arg1/arg2/arg3/number_"+i;
}

AFAIR,我尝试过的所有浏览器(没有测试IE)都下载了资源,并没有要求我实际显示图像或将其附加到DOM或任何东西。这对于记录和预取东西很有用,但不是很多。

答案 1 :(得分:1)

没有。一点也不。您正在循环调用window.open() 10次。

You may want a JavaScript modal window.

答案 2 :(得分:1)

有没有办法在没有显示新窗口的情况下执行此操作?

不确定

for(i=0;i<10;i++)
{
    // window.open("myapp://arg1/arg2/arg3/number_"+i);
}

说真的,你需要解释一下你期望发生什么 - window.open的目的是打开新的(弹出窗口)窗口,如果那不是你想要的那么你需要另一个功能。 / p>

更新:阅读完评论后,您希望做的是向该页面发送HTTP请求(而不是在新窗口中打开该页面)。通常的方法是使用XMLHttpRequest对象发送请求。

如果您使用的是JavaScript框架/库(例如jQuery),您可能会发现此对象包含在更易于使用的函数中。