首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >中断网站的GET请求

中断网站的GET请求
EN

Stack Overflow用户
提问于 2013-07-27 17:15:04
回答 2查看 117关注 0票数 0

我正在开发一个网站,您可以按下键快速浏览图像,所以我已经设置了Javascript和所有内容(它只是用.innerHTML重写一个div以显示一个新的图像)。

但是,如果您按了几次键,即使不再需要,它也会加载每个图像。这延迟了用户实际想要看到的图像的加载,因此站点速度减慢(流量使用效率低等等)

在Chrome监测器里看起来是这样的:

http://i.stack.imgur.com/IkzEC.png

虽然它实际上可以切断当前的GET操作符,因为旧图像不再需要了。

有什么办法打断它吗?如果可能的话,不使用完全不同的技术来加载图像(AJAX)

提前感谢!

编辑:疯狂列车的想法与iframes的工作!谢谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-07-27 17:20:34

您可以使用此片段取消请求:

代码语言:javascript
运行
复制
try {
    window.stop();
} catch(e) {
    document.execCommand('Stop');
}

您可能想要执行的另一个安全技巧是在几毫秒后触发请求。

更新: XMLHttpRequest有abort方法。在发送新请求之前调用它。中止

票数 0
EN

Stack Overflow用户

发布于 2013-07-27 17:27:05

我不相信以你想要的方式完全“取消请求”是不可能的(想想尝试收回你已经说过的话)。即使您可以告诉浏览器忽略响应,服务器仍将处理和发送响应。

你可以采取的一种方法是将你的反应分成几组。例如,它可以返回下一个图像的url,而不是获取单个图像的请求(我假设这个请求只是本例中的url)。如果你的'x‘是10,而用户跳过5个图像,你仍然必须第6,以显示给他们。所有检索到的“额外”图像都会被有效地预取,以防万一。

您的代码必须稍微改变,因为它必须缓存图像,并在发出请求之前检查它是否已经有了特定的图像。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17900448

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档