[英]Abort elasticsearch request using elastic.js
有沒有一種方法可以使用elasticjs取消對Elasticsearch的請求/查詢? 我正在使用的網絡應用每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將返回一個對象(一個Promise或一個普通對象),該對象具有abort()方法。 調用該abort方法將結束HTTP請求,但不會結束Elasticsearch正在進行的工作。
特別針對您的示例:
setTimeout(function () {
if (!dataFromElasticsearch) {
request.abort();
}
}, 5000)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.