使用elastic.js中止弹性搜索请求
Abort elasticsearch request using elastic.js
有没有办法使用elasticjs取消对Elasticsearch的请求/查询?我正在开发的web应用程序每5秒钟执行一次请求/查询,但如果由于某种原因,5秒钟内没有出现响应,我想取消请求(这样浏览器就不会堆积一堆不必要的请求,因为查询是重复发生的)。我知道这不会阻止Elasticsearch完成查询,但我至少想在浏览器中取消请求。
示例:
var request = ejs.Request().doSearch();
var dataFromElasticsearch;
request.then(function (data) {
dataFromElasticsearch = data;
});
setTimeout(function () {
if (!dataFromElasticsearch) {
//do something here to cancel request
}
}, 5000)
根据elasticsearch.js(3.1,在撰写本文时)的文档:
调用API将返回一个具有abort()方法的对象(promise或纯对象)。调用中止方法会结束HTTP请求,但不会结束Elasticsearch正在做的工作。
特别针对您的示例:
setTimeout(function () {
if (!dataFromElasticsearch) {
request.abort();
}
}, 5000)
相关文章:
- 是Google自定义搜索API的客户端请求数量有限
- 当搜索字段为空时,取消所有ajax请求
- 无法向谷歌搜索网页发出JSONP请求
- 请求一个完整的响应对象,而不是紧凑的响应对象foursquare场地搜索api
- 如何从CDN搜索请求JQuery
- 如何显示弹出窗口以在使用纯 JavaScript 从 Web 服务器获取/请求数据时禁用搜索按钮
- 使用语义 UI 框架和 ajax 请求的自动完成或提前键入搜索框
- 谷歌附近的搜索请求会间歇性地返回不同的值
- 将参数传递给elasticsearch javascript api搜索请求的回调函数
- 使用 $timeout 来限制 Angularjs 1.2 搜索应用程序中发出的 http 请求量
- 使用边界放置搜索请求,结果不一致
- 带有JSON数据源的jQueryDataTables插件在全局搜索中接受多个POST请求
- 使用elastic.js中止弹性搜索请求
- 只有在按下ENTER键后才启动表搜索请求
- placeId不能作为位置详细信息搜索的请求参数
- 谷歌自定义搜索"热门查询"错误请求
- JQuery即时搜索:如何发出第二个post请求.以及如何利用输入键进行搜索
- zimlet在zimbra,如何使一个简单的搜索请求
- 为什么post请求工作在本地而不是远程?搜索到的Url不同
- Html5 localstorage sql,请求搜索